我试图在退出代码时将单词,其词性和定义保存到文件中,然后在下次重新打开代码时将它们读回。这是我的保存行:
WordListPrinter.println(name + " " + partOfSpeech + " " + definition);
这是我阅读的代码
while(readFromFile.hasNextLine()){
String name = readFromFile.next();
String POS = readFromFile.next();
String definition = readFromFile.nextLine();
}
每次我运行代码时,它都会在中添加一个空格definition,因为该String definition = readFromFile.nextLine();部件" " + definition从保存行读取。我试过了
while(readFromFile.hasNextLine()){
String name = readFromFile.next();
String POS = readFromFile.next();
String useless = readFromFile.next();
String definition = readFromFile.nextLine();
}
删除空格,但它删除了空格和定义的第一个单词。我也尝试过char useless = readFromFile.next().charAt(0);,但是useless无论如何都只是节省了空间并删除了定义的第一个单词。我有没有办法在不删除第一个单词的情况下扫描并删除空格?
问题来源:Stack Overflow
“问题”来自next()与nextLine()调用的混合,是“预期行为”。(javadoc)
摆脱空白:
String definition = readFromFile.next();
String definition = readFromFile.nextLine().trim();
回答来源:Stack Overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。