Java中的简单逐行读取
我有以下格式的输入:Java中的简单逐行读取,java,file,io,Java,File,Io,我有以下格式的输入: 12 : 13 24 1 2 2 : 1 4 9 : 0 1 82 ... 我想把每一行作为一个StringStream来阅读,然后一块一块地阅读每一个StringStream 例如,第1行将存储为StringStream“12:13 24 1” 2“,然后我就可以一件一件地读它了(“12”,“:”,“13”, “24”、“1”、“2”)(类似于C++中的cin>>stingstream) 在Java中,最好的方法是什么?BufferedReader.readLine()
12 : 13 24 1 2
2 : 1 4
9 : 0 1 82
...
我想把每一行作为一个StringStream来阅读,然后一块一块地阅读每一个StringStream
例如,第1行将存储为StringStream“12:13 24 1”
2“,然后我就可以一件一件地读它了(“12”,“:”,“13”,
“24”、“1”、“2”)(类似于C++中的cin>>stingstream)
在Java中,最好的方法是什么?BufferedReader.readLine()读取行,然后
Java.util.Scanner
分割每行。您可以使用BufferedReader类读取行内容
BufferedReader br = new BufferedReader(new FileReader(new File("c:\\text.txt")));
使用br.readLine()逐行阅读内容
FileReader fileReader = new FileReader(new File("sample.txt"));
BufferedReader bufferedReader = new BufferedReader(fileReader);
String str;
while((str=bufferedReader.readLine())!=null)
{
System.out.println(str);
}
阅读该行后,您可以在
:
上使用split()
,然后使用“”(空格)。您将获得预期的结果。您试图做的事情称为标记化:)
除非您想自己查找换行符分隔符,否则可以将上述读取器之一与java.io.BufferedReader结合使用readLine()方法一次读取一行。Javadocs for BufferedReader中有一个例子,可以将其与文件读取器一起使用。请看一下,从控制台上看如何?您可以使用java.util.Scanner,比如java.util.Scanner Scanner=new Scanner(System.in);并使用scanner.nextLine()从控制台获取您试图输入的内容,非常感谢!
// pretty standard open file with buffered reader.
File file = new File("inputFileName");
FileReader fileReader = new FileReader(file);
BufferedReader bufferedFileReader = new BufferedReader(fileReader);
// The string that will hold the content of each line.
String line;
// Read each line and store string content in line.
while((line=bufferedFileReader.readLine())!=null)
{
// Create a tokenizer to split the string into tokens.
StringTokenizer tokenizedLine= new StringTokenizer(line);
// For each token in the current line so something
while (while (tokenizedLine.hasMoreTokens())
{
System.out.println(tokenizedLine.nextToken());
}
}