java 如何使用扫描仪跳过输入?

ruyhziif  于 2023-10-14  发布在  Java
关注(0)|答案(1)|浏览(126)

我一直在使用扫描仪读取一个文本文件,但得到这样的输出。
[f,

,f,

,f,

,f,

,f]
文本文件中的字符都用回车符分隔。
我已经尝试使用scanner.skip(“\n”);,但这会引发NoSuchElementException。我该怎么修复它?循环:

  1. File file = new File("src/crossword/squares/" + Crossword + ".txt");
  2. ArrayList<String> values = new ArrayList<String>();
  3. Scanner scanner;
  4. while(scanner.hasNext())
  5. {
  6. scanner.skip("\n");
  7. scanner.useDelimiter("");
  8. String value = scanner.next();
  9. values.add(value);
  10. }
  11. } catch(FileNotFoundException e) {
  12. e.printStackTrace();
  13. }
cuxqih21

cuxqih211#

换行符的正确转义序列是“\n”(而不是“/n”),并且应该在双引号内使用,而不是斜杠。

  1. Scanner scanner = new Scanner(new File("your_file.txt"));
  2. while (scanner.hasNext()) {
  3. String line = scanner.nextLine();
  4. // Process the line here
  5. }
  6. scanner.close();

hasNext()方法是由java.util.Scanner类提供的方法。它用于检查是否有另一个标记可用于从输入源(可以是文件、流或其他源)进行阅读

相关问题