所以我从.txt文件中取一行并将其转换为字符串。我想用|来分割字符串,但是我之前和之后都有空格,这是代码的混乱,这是我到目前为止所拥有的:
File file = new File(fileLocation);
Scanner sc = new Scanner(file);
String line;
String[] words;
while(sc.hasNext()){
line = sc.next();
words = line.split("\\|");
this.german.add(words[0]);
this.english.add(words[1]);
}
示例行将类似于:in blue | in blau
我还想保留空格。
.txt文件将是:
在Rot | in red
中 Blau中的|蓝色
in Grun | in green
在Gelb |黄色
它会添加|左侧的所有项目到德国名单,以及英国名单右边的所有名单。
啊,想通了,sc.next()是下一个String,而不是下一行,我用sc.nextLine()替换它,一切正常,谢谢。
答案 0 :(得分:3)
致电
line.replaceAll(" ", "");
预先;这将摆脱所有空格。如果您只想删除拆分字符串中的前导和尾随空格,请使用
words[i].trim()
代替。
答案 1 :(得分:2)
使用以下模式:
words = line.split("\\s+\\|\\s+");