使用java scanner类在末尾空白处按行读取

使用java scanner类在末尾空白处按行读取,java,java.util.scanner,Java,Java.util.scanner,我正在帮助我的姐妹们编写一个简单的java程序,我被难倒了。他们只学习了扫描器类来读取文件内容,所以我认为他们应该使用扫描器类。每一行都包含字母和可能的空格,我们希望将每一行存储在一个数组中。在其中一行包含以下内容之前,此操作非常有效: abcde f(f后面的空格应作为 行) 但是,scanner.nextLine()似乎忽略了最后一个空格。我想我可以将扫描仪定界符设置为\n如下: scanner.useDelimiter("\n") 然后从那里使用scanner.Next(),但这似乎仍然

我正在帮助我的姐妹们编写一个简单的java程序,我被难倒了。他们只学习了扫描器类来读取文件内容,所以我认为他们应该使用扫描器类。每一行都包含字母和可能的空格,我们希望将每一行存储在一个数组中。在其中一行包含以下内容之前,此操作非常有效:

abcde f(f后面的空格应作为 行)

但是,
scanner.nextLine()
似乎忽略了最后一个空格。我想我可以将扫描仪定界符设置为
\n
如下:

scanner.useDelimiter("\n")
然后从那里使用scanner.Next(),但这似乎仍然不起作用。我在谷歌上搜索了一下,看了一些问题。这里的这个问题似乎表明扫描器类不容易做到这一点:

有什么想法吗?我觉得有一个简单的方法我可以忽略

这是我在台词中读到的:

While(scanner.hasNextLine(){
    String nextLine = scanner.nextLine();
使用上面的示例,我的字符串将为
abcdef
。它将在最后清除空的空间。 我还尝试使用了
hasNext
next

请原谅我的格式设置,我正在电话上编辑。

将文本文件保存为ANSI编码,然后重试

右边
scanner.nextLine()
将捕获行中的所有内容,包括空格


scanner.next()
不会捕获空白,因为默认情况下分隔符是空白。

显示读取每行的部分。确保不要使用任何“验证内容”,以确保使用记事本++文件的每一行中都有哪些字符,记事本++可以使用菜单栏中的“显示所有字符”功能以图形方式显示所有未打印的字符。请确保文件编码从原始来源是正确的,因为在读取文件(UTF-8、ASCII等)时,不同的文件编码可能会有问题,谢谢。我在寻找什么,空白空间出现了?我不确定它的文件问题,因为我们所读的文件是提供给测试的。只是为了验证您正在寻找的空间正好发生在(CRLF,\R\N或/0x0D/0x10对于Windows系统)之后,或者在它之前。我看到LF在我行末尾的空白处。通过快速的google搜索,似乎\n与此匹配。