Java 读取文件并根据行的内容执行函数

Java 读取文件并根据行的内容执行函数,java,file,if-statement,numbers,line,Java,File,If Statement,Numbers,Line,我想知道是否有可能通过行号来读取文件,每个行号都有不同的值,并设置一个条件,如果该行包含指定的某个字符串或数字。例如,如果它这样做了,它会将该行中指定的内容放入一个变量中吗 所以在一个文件中,第一行的年龄是50岁,第二行的年龄是23岁,第三行的年龄是34岁。我所希望的是,我特别关注第3行,并将数字34放入一个变量中,以便在我的程序中使用 如果可能的话,你会怎么做 可能的重复: 您始终可以遍历每一行,通过int或short跟踪该行 一些代码: String line; BufferedReader

我想知道是否有可能通过行号来读取文件,每个行号都有不同的值,并设置一个条件,如果该行包含指定的某个字符串或数字。例如,如果它这样做了,它会将该行中指定的内容放入一个变量中吗

所以在一个文件中,第一行的年龄是50岁,第二行的年龄是23岁,第三行的年龄是34岁。我所希望的是,我特别关注第3行,并将数字34放入一个变量中,以便在我的程序中使用

如果可能的话,你会怎么做

可能的重复:

您始终可以遍历每一行,通过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();

我要补充的是,当其他人也有相同的信息时,从一行中获取一些信息是不好的,我想说的是,不可能直接寻址特定行,除非-也许您知道文件的行大小,等等。。。查找文件。但您可以使用此命令逐行浏览您的文件:

String line;
BufferedReader br = new BufferedReader(new FileReader(file));
while ((line = br.readLine()) != null) {
   // do some cool stuff with this line.
}
br.close();

可以使用扫描仪对象读取文件。您可以使用分隔符查找所需信息,并使用计数器跟踪行,然后将其放入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
}

请改进答案,这可能是一个评论。