gpt4 book ai didi

java - (Java) 从文件读取时如何跳过空格?

转载 作者:行者123 更新时间:2023-12-01 17:57:44 26 4
gpt4 key购买 nike

当我退出代码时,我试图将单词、它们的词性和定义保存到文件中,然后在下次重新打开代码时读回它们。这是我的保存行:

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 的空间无论如何,删除了定义的第一个单词。有没有办法让我扫描并删除空格而不删除第一个单词?

最佳答案

“问题”来自于 next()nextLine() 调用的混合,并且是“预期行为”。 (javadoc)

删除空白:

  • 您可以(如果适用)始终使用 next()(不使用 nextLine()),所以:

    String definition = readFromFile.next();
  • String.trim是“永远不会错”(从字符串中删除尾随空格):

    String definition = readFromFile.nextLine().trim();

关于java - (Java) 从文件读取时如何跳过空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60687444/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com