I am trying to parse the Linux /etc/passwd
file in Java. I'm currently reading each line through the java.util.Scanner
class and then using java.lang.String.split(String)
to delimit each line.
The problem is that the line:
list:x:38:38:Mailing List Manager:/var/list:/bin/sh"
is treated by the scanner as 3 different lines:
list:x:38:38:Mailing
List
Manager...
When I type this out into a new file that I didn't get from Linux, Scanner
parses it properly.
Is there something I'm not understanding about new lines in Linux?
Obviously a work around is to parse it without using scanner, but it wouldn't be elegant. Does anyone know of an elegant way to do it?
Is there a way to convert the file into one that would work with Scanner
?
Not even two days ago: Historical reason behind different line ending at different platforms
EDIT
Note from the original author:
"I figured out I have a different error that is causing the problem. Disregard question"