0

我知道这是一个非常问的问题,但我找不到我的问题的适当答案。事情是我必须像这样从 .TXT 文件中读取的程序和应用程序

Real:Atelti
Alcorcon:getafe 
Barcelona:Sporting

我的问题是我该怎么做才能告诉Java我想要String before : 在一个ArrayList 和Strings after : 在另一个ArrayList 中?我猜它使用的是分隔符方法,但我不知道在这种情况下如何使用它。

对不起我的英语不好,我想我必须改进它。谢谢

4

5 回答 5

1

使用java的split函数。

脚步:

  1. 声明两个arrayList。l1和l2;
  2. 阅读每一行。
  3. 用“:”分割每一行,这将返回一个长度为 2 的数组,array. (根据您的输入)
  4. l1.add(array[0]),l2.add(array 1 )

试试自己,如果需要帮助,请发布代码:)

在这里检查拆分功能的使用,虽然通过谷歌你可以找到许多不同的例子

于 2012-08-06T11:57:20.823 回答
1

使用“:”作为分隔符拆分字符串。将结果中的奇数条目添加到一个列表,甚至添加到另一个列表。

于 2012-08-06T11:59:07.610 回答
1

如果你的文字是这样的:

皇马:阿泰尔蒂

阿尔科康:赫塔菲

巴塞罗那:体育

您可以通过以下方式实现您想要的:

StringBuilder text = new StringBuilder();
Scanner scanner = new Scanner(new FileInputStream(fFileName), encoding); //try utf8 or utf-8 for 'encoding'
try {
  while (scanner.hasNextLine()){
    String line = scanner.nextLine();
    String before = line.split(":")[0];
    String after = line.split(":")[1];
    //dsw 'before' and 'after' - add them to lists.
  }
}
finally{
  scanner.close();
}
于 2012-08-06T12:00:00.437 回答
0

1.用作":"分隔符。

2.然后将它们存储在String[]usingsplit()函数中。

3.尝试使用BufferedReader而不是扫描仪。

例如:

File f = new File("d:\\Mytext.txt");
FileReader fr = new FileReader(f);
BufferedReader br = new BufferedReader(fr);
ArrayList<String> s1 = new ArrayList<String>();
ArrayList<String> s2 = new ArrayList<String>();

  while ((br.readLine())!=null){

    String line = br.readLine();

    String bf = line.split(":")[0];
    String af = line.split(":")[1];

    s1.add(bf);
    s2.add(af);

  }
于 2012-08-06T12:15:07.620 回答
0
        Scanner scanner = new Scanner(new FileInputStream("YOUR_FILE_PATH"));
        List<String> firstList = new ArrayList<String>();
        List<String> secondList = new ArrayList<String>();
        while(scanner.hasNextLine()) {
            String currentLine = scanner.nextLine();
            String[] tokenizedString = currentLine.split(":");
            firstList.add(tokenizedString[0]);
            secondList.add(tokenizedString[1]);
        }
              scanner.close();

枚举 firstList 和 secondList 将为您提供所需的结果。

于 2012-08-06T12:09:20.567 回答