我想从java中的文本文件中读取输入。我有一个文本文件如下。
5
4
abcd
6
8
defgh
10
我想从文件中读取每个字符作为一个单独的实体,并单独处理该字符,就像在数据库中存储4分隔abcd作为b c d并单独处理它们。
有哪些方法可以做到这一点。什么是最有效的方式。
答案 0 :(得分:3)
如果使用Java 7,那么简单的方法(和简短):
List<String> lines = Files.readAllLines(Paths.get("path to file"), StandardCharsets.UTF_8);
它会将所有文件数据放到列表项表示一行的列表中
答案 1 :(得分:0)
如果您的文件有新行,请使用读取行。
String sCurrentLine;
br = new BufferedReader(new FileReader("C:\\testing.txt"));
while ((sCurrentLine = br.readLine()) != null) {
System.out.println(sCurrentLine);
}
答案 2 :(得分:0)
如果您想单独使用每个角色,那么可以使用扫描仪:
import java.io.File;
import java.io.IOException;
import java.util.Scanner;
public class SOExample {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(new File("myfile.txt"));
sc.useDelimiter("");
while (sc.hasNext()) {
String s = sc.next();
if (s.trim().isEmpty()) {
continue;
}
System.out.println(s);
}
sc.close();
}
}
输出:
5
4
a
b
c
d
6
8
d
e
f
g
h
1
0