将文本文件的每一行的第一个单词读入ArrayList

时间:2012-06-04 02:41:30

标签: java file-io arraylist bufferedreader fileinputstream

我有一个很长的本地文本文件,我想编写一个方法来读取它并将每行的第一个单词添加到ArrayList Strings

我对基本的I / O操作有一个非常原始的理解。现在,根据我的理解,我需要使用某种InputReader对象读取每个第一个单词,然后使用类似OutputStreamBuffer的内容将每个单词添加为Strings反过来ArrayList。我是在正确的轨道上吗?

如果这是正确的,我不确定正确的语法是什么(特别是在复制每一行中的第一个单词后让InputStreamReader转到下一行。如果我'我甚至不接近,你们会做什么?

非常感谢大家的帮助。我希望我的描述对你来说足够清楚。

2 个答案:

答案 0 :(得分:3)

你走在正确的轨道上 - 这是我对你的要求的一般建议......

  1. 创建ArrayList<String>来存储您的文字
  2. 使用BufferedReader使用readLine();
  3. 逐行读取您的文件
  4. 拆分该行并仅读取第一个单词(可能使用String.split()方法或StringTokenizer或正则表达式)
  5. 使用ArrayList方法将该字词存储在add()中,然后阅读第2点的下一行。
  6. 不应该为OutputStream使用ArrayList,这只会让事情变得复杂。

答案 1 :(得分:1)

我使用java.util.Scanner,特别是hasNextLine和nextLine方法来获取每一行。

然后在每一行使用另一个扫描程序,使用hasNext和next方法获取第一个单词,或使用String split方法(或其他方式)获取第一个单词。

然后将第一个单词添加到ArrayList<String>