java - 将文本文件中的输入读取到数组列表中

标签 java arrays bufferedreader

我有一个文本文件,我应该从中读取数据。然后应该使用数据来设置要通过的级别:

  • > 20 → 非常好
  • 12-20 点之间 → 好的
  • <12 → 失败

.txt 文件如下所示

X;20
Y;12

问题是,当我从文件中读取并将其添加到 ArrayList 时,它只读取列。换句话说,结果是索引 0 包含 X;Y,索引 1 包含 20;12 。我需要的是索引 0 包含 [X 20] 和索引 1 包含 [Y 12] .

我的代码是:

BufferedReader assignment = new BufferedReader(new FileReader(assignmentFile));
ArrayList<String> assignmentArrayList = new ArrayList<String>();
String item;
while ((item = assignment.readLine()) != null) {
    assignmentArrayList.add(item);
    String[] itemSplit = item.split(";");
    String passWithDistinction = itemSplit[0];
    String pass = itemSplit[1];
    System.out.println(passWithDistinction + pass);
}

最佳答案

您可以将文件的内容检索到 String 数组,如下所示:

File assignmentFile = new File("C:/Dir1/Dir2/file.txt");
ReadFile assignment = new ReadFile(assignmentFile.getAbsolutePath());
String[] lines = assignment.OpenFile();

如果您想设置字符串,使其不包含“;”符号,添加这些行:

for(int i=0; i<lines.length(); i++)
    lines[i].replace(";", " ");

关于java - 将文本文件中的输入读取到数组列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28408653/

相关文章:

java - 套接字 : cannot read from BufferedReader and/or write to PrintWriter in certain conditions

java - BufferedReader,检测是否还有文本要读取

java - Apache Helix 资源平衡器(案例 : each resource on independent node)

java - 我怎样才能捕捉到一个特定的异常

ruby - 如何更优雅地删除 Ruby 数组所有元素中的重复项?

java - 数组初始化 - 性能差异

java - 编译时或运行时期间的实习何时完成?代码中出现这种行为的原因是什么? BlueJ 有问题吗?

java - 这段代码怎么会导致死锁呢?

java - 创建初始重复数据的二维字符串数组的最有效方法是什么?

java - BufferedReader 似乎无限读取第一行