我想知道是否可以通过行号读取文件,每个文件具有不同的值,并且如果该行包含指定的某个字符串或数字,则创建一个条件。如果它这样做,例如,它会将该行中指定的内容转换为变量?
所以在一个文件行中,一个有Age:50,第二行有Age:23,第3行有Age:34。我希望的是我特别注意第3行并取第34个并放置它在我的程序中使用的变量。
如果有可能,你会怎么做呢?
答案 0 :(得分:1)
我想说,不可能直接寻址特定的行,除非 - 也许你知道你的文件的行大小等...来寻找文件。但是你可以用它来逐行浏览你的文件:
String line;
BufferedReader br = new BufferedReader(new FileReader(file));
while ((line = br.readLine()) != null) {
// do some cool stuff with this line.
}
br.close();
答案 1 :(得分:0)
可能重复:Reading a file and performing functions based on the contents of the line
您可以随时遍历每一行,通过int或short来跟踪行。
一些代码:
String line;
BufferedReader br = new BufferedReader(new FileReader(FILE_HERE));
int line = 0;
while ((line = br.readLine()) != null) {
line++;
if(line == 3){
//do whatever you want
}
}
br.close();
我将补充说,从一行获取某些内容而其他人也有相同的信息是不好的
答案 2 :(得分:0)
您可以使用scanner对象来读取文件。你可以使用分隔符找到你想要的信息和一个计数器来跟踪线,然后把它放在一个arraylist或其他东西。取决于你想做什么。
Scanner in = new Scanner(filename);
int line = 0;
in.useDelimiter("[regex of the info you are looking for]");
while in.hasNext()) {
line++
//do something
}