根据行的内容读取文件并执行功能

时间:2014-01-20 23:03:46

标签: java file if-statement numbers line

我想知道是否可以通过行号读取文件,每个文件具有不同的值,并且如果该行包含指定的某个字符串或数字,则创建一个条件。如果它这样做,例如,它会将该行中指定的内容转换为变量?

所以在一个文件行中,一个有Age:50,第二行有Age:23,第3行有Age:34。我希望的是我特别注意第3行并取第34个并放置它在我的程序中使用的变量。

如果有可能,你会怎么做呢?

3 个答案:

答案 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
}