2016-09-21 50 views
-2

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 North Road”。但让我们说我想要他们的名字,所以我打电话给另一种方法,会给“John Doe”。问题是,我不知道如何根据文件中的位置获取信息。

我正在考虑一个BufferedReader,但我不知道具体做了什么。所有的帮助表示赞赏。

+1

我无法读取,因为它是不可能知道每一场的开始和结束,所以这将是不可能的程序来读取它。 – Andreas

+0

缓冲读取器可以正常读取文本文件,您可以一次读取一行文件。但问题是你的文件如何分隔?它是制表符分隔还是字段是固定的字符长度?如果是空格分隔,则您的数据字段已有空格,因此存在问题。尝试一些东西并更新具体问题的问题。 – user3745362

回答

0

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

John Doe | 1234 North Road |纽约纽约|学生

Joe Tommy | 5678 South Lane |布法罗纽约|教师

示例代码:

 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(); 
     }