質問編集履歴
2
コードを最新にアップデートし、お聞きしたい部分を具体化しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -14,27 +14,43 @@
|
|
14
14
|
|
15
15
|
【想定】
|
16
16
|
|
17
|
-
car.txtファイルの情報(「car,car2,car3,car4」)をS
|
17
|
+
car.txtファイルの情報(「car,car2,car3,car4」)をString"strTest"へ、
|
18
|
+
|
19
|
+
”Car2”をStringBuilder"sb"に格納したい。
|
18
20
|
|
19
21
|
【実態】
|
20
22
|
|
21
|
-
Stringには
|
23
|
+
String”strTest”には以下Messageが格納され、”sb”には”,”が入っております。
|
24
|
+
|
25
|
+
java.util.Scanner[delimiters=\p{javaWhitespace}+][position=0][match valid=false][need input=false][source closed=false][skipped=false][group separator=\,][decimal separator=.][positive prefix=][negative prefix=\Q-\E][positive suffix=][negative suffix=][NaN string=\QNaN\E][infinity string=\Q?\E]
|
22
26
|
|
23
27
|
|
24
28
|
|
25
|
-
【
|
29
|
+
【アドバイス依頼内容】
|
30
|
+
|
31
|
+
String”strTest”に”car,car2,car3,car4”を格納したいのですが、
|
32
|
+
|
33
|
+
現状のコードは以下です。こちらで取れると思っていますが、上記のような実態となっており、できません。足りない部分があればアドバイスいただければ幸甚です。
|
26
34
|
|
27
35
|
|
28
36
|
|
37
|
+
また、”sb”においては”Car2”の次である”,”が入っております。If条件を”Car2”の一つ手前にすることで今のコードのままでも”Car2"を”sb”に格納できますが、条件を変えずに”Car2”をAppendする方法があればご教示いただければ幸甚です。
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
ここに言語を入力
|
42
|
+
|
43
|
+
```
|
44
|
+
|
29
45
|
try{
|
30
46
|
|
31
|
-
|
47
|
+
FileWriter fw = new FileWriter("C:\User\car.txt",false);
|
32
48
|
|
33
|
-
|
49
|
+
PrintWriter pw = new PrintWriter(new BufferedWriter(fw));
|
34
50
|
|
35
|
-
|
51
|
+
pw.println(”car, car2 , car3, car4");
|
36
52
|
|
37
|
-
|
53
|
+
pw.close();
|
38
54
|
|
39
55
|
}catch (IOException ex){
|
40
56
|
|
@@ -44,7 +60,7 @@
|
|
44
60
|
|
45
61
|
|
46
62
|
|
47
|
-
File file = new File("car.txt");
|
63
|
+
File file = new File("C:\User\car.txt");
|
48
64
|
|
49
65
|
Scanner scan = null;
|
50
66
|
|
@@ -66,12 +82,14 @@
|
|
66
82
|
|
67
83
|
System.out.println(strTest);
|
68
84
|
|
69
|
-
StringBuilder sb = new StringBuilder();
|
85
|
+
StringBuilder sb = new StringBuilder();
|
70
86
|
|
71
|
-
while(scan.hasNext()){
|
87
|
+
while(scan.hasNext()){
|
72
88
|
|
73
89
|
if(scan.next().equals("car2")){
|
74
90
|
|
75
91
|
sb.append(scan.next()+" ");
|
76
92
|
|
77
93
|
}else{}
|
94
|
+
|
95
|
+
```
|
1
ご指摘いただいたエラー個所とエラー内容を更新しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -32,7 +32,7 @@
|
|
32
32
|
|
33
33
|
PrintWriter pw = new PrintWriter(new BufferedWriter(fw));
|
34
34
|
|
35
|
-
pw.println(”car,car2,car3,car4");
|
35
|
+
pw.println(”car, car2 , car3, car4");
|
36
36
|
|
37
37
|
pw.close();
|
38
38
|
|
@@ -65,3 +65,13 @@
|
|
65
65
|
String strTest = sbtest.toString();
|
66
66
|
|
67
67
|
System.out.println(strTest);
|
68
|
+
|
69
|
+
StringBuilder sb = new StringBuilder();
|
70
|
+
|
71
|
+
while(scan.hasNext()){ →ここでNullPointerExceptionが発生します。
|
72
|
+
|
73
|
+
if(scan.next().equals("car2")){
|
74
|
+
|
75
|
+
sb.append(scan.next()+" ");
|
76
|
+
|
77
|
+
}else{}
|