文件的字符串:
insert ignominious
insert elephant
insert judicious
insert bastion
insert fastidious
insert generous
insert hilarious
insert astute
insert degenerate
insert courageous
traverse
remove judicious
remove ignominious
当一行中有两个单词时,我的代码会分割字符串,但是当它进入“遍历”时,它会给出 OutOfBounds 错误,因为它只是一个单词。我不确定您是否需要检查该行上是否只有一个单词以免拆分以及如何执行此操作。
BufferedReader in = new BufferedReader(new FileReader("file.txt"));
String str;
while ((str = in.readLine()) != null) {
String[] strArr = str.split(" ");
if(strArr[1]!=null)
System.out.println(strArr[0] + ", "+strArr[1]);
else
System.out.println(strArr[0]);
}
in.close();
最佳答案
正如@markspace所说,你应该只检查数组的长度。
while ((str = in.readLine()) != null) {
String[] strArr = str.split(" ");
if(strArr.length > 1)
System.out.println(strArr[0] + ", "+strArr[1]);
else
System.out.println(strArr[0]);
}
如果只想打印这样的名称,您可以这样做:
while ((str = in.readLine()) != null) {
String[] strArr = str.split(" ");
System.out.println(String.join(", ", strArr));
}
关于java - 从java文件中分割字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52683566/