Java—从文本文件中读取信息

Java—从文本文件中读取信息,java,Java,information.txt: //FNAME LNAME ADDRESS CITY STATE OCCUPATION John Doe 1234 North Road New York New York Student Joe Tommy 5678 South Lane Buffalo New York Teacher 我试图使用Java来读取一个文件,确切地说是一个文本文件,并根据文本在文件中的位置获取信息 假设我调用一个方法从文件中获取一个人的地址,我只想要北路1234号。但是假设我

information.txt:

//FNAME LNAME ADDRESS CITY STATE OCCUPATION

John Doe 1234 North Road New York New York Student
Joe Tommy 5678 South Lane Buffalo New York Teacher
我试图使用Java来读取一个文件,确切地说是一个文本文件,并根据文本在文件中的位置获取信息

假设我调用一个方法从文件中获取一个人的地址,我只想要北路1234号。但是假设我想要他们的名字,所以我调用了另一个方法,该方法将给出John Doe。问题是,我不知道如何根据它在文件中的位置获取信息


我正在考虑一个BufferedReader,但我不知道它到底是做什么的。非常感谢您的帮助。

最好的方法是在文本文件中添加分隔符。例如

约翰·多伊|纽约北路1234号|纽约|学生

乔·汤米| 5678南巷|纽约水牛城|老师

示例代码:

        String dirFile = "C:\\myfile.txt";
        FileReader fr = new FileReader(dirFile);
        BufferedReader br = new BufferedReader(fr);
        String line = null;
        while ((line = br.readLine()) != null) {
               String[] sep = line.split("\\|");
               String name = sep[0].trim();
               String address = sep[1].trim();
               String cities = sep[2].trim();
               String category = sep[3].trim();
        }

我读不懂,因为不可能知道每个字段的开始和结束位置,所以程序也不可能读取它。缓冲读取器可以很好地读取文本文件,您可以一次读取一行。但问题是您的文件是如何分隔的?它是以制表符分隔的,还是字段的长度是固定的?如果是以空格分隔的,则会出现问题,因为数据字段中已经有空格。尝试一些东西,并用具体问题更新问题。