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