【发布时间】:2010-09-30 09:30:33
【问题描述】:
我正在尝试用 Java 解析 Linux /etc/passwd 文件。我目前正在通过java.util.Scanner 类读取每一行,然后使用java.lang.String.split(String) 分隔每一行。
问题在于:
list:x:38:38:Mailing List Manager:/var/list:/bin/sh"
被扫描仪视为 3 条不同的线:
list:x:38:38:MailingListManager...
当我将它输入一个不是从 Linux 获得的新文件时,Scanner 会正确解析它。
对于 Linux 中的新行,我有什么不明白的地方吗?
显然,一种解决方法是在不使用扫描仪的情况下对其进行解析,但这并不优雅。有谁知道一种优雅的方法吗?
有没有办法将文件转换为可与Scanner 一起使用的文件?
甚至两天前:Historical reason behind different line ending at different platforms
编辑
原作者注:
“我发现我有一个不同的错误导致了问题。忽略问题”
【问题讨论】:
-
我发现我有一个不同的错误导致了问题。忽略问题。
-
您能否记录下真正的问题和解决方案,以确保完整性?添加为问题的编辑(如果您有足够的代表点)