java i/o 读取多行文件并存储为数组列表

标签 java arraylist io

我想读取一个简单的文本文件并将其保存为 ArrayList。该文件看起来像这样

0.2253 
0.808 
0.132 
0.341 

4.18546
8.65418
1.45535
0.341

and so on...

它们始终是四行,并且始终由空格分隔。不知何故,我想使用它作为断点来开始新数组,并以第一个新数字作为索引零进行恢复。

数字必须存储为字符串。

我想将此数据分配给 ArrayList,以便

[0][0] = 0.2253
[0][1] = 0.808
[0][2] = 0.132
[0][3] = 0.341

[1][0] = 4.18546
[1][1] = 8.65418
[1][2] = 1.45535
[1][3] = 0.341

如何使用 java i/o 的结构来做到这一点?

java io 数组列表

到目前为止我有这个..

    //array list data struc
    ArrayList<String> array_list = new ArrayList<String>();

    String component_doc = "/home/joao/document.txt"

    Scanner inFile = null;
    try 
    {
        inFile = new Scanner(new File(component_doc));
    } 
    catch (FileNotFoundException e) 
    {
        e.printStackTrace();
    }

    while(inFile.hasNextLine())
    {
        array_list.add(inFile.nextLine());
    }

最佳答案

这是一种读取这些行并将它们放入数组列表中的方法。

import java.nio.charset.Charset;
import java.nio.file.Files;
import java.nio.file.Paths;

protected static ArrayList<String> yourArrayList = new ArrayList<String>();
String fileName = "C:\\Users\\myComputer\\Desktop\\test_file.txt";
    try
    {
        List<String> lines = Files.readAllLines(Paths.get(fileName), Charset.defaultCharset());
        for (int i = 0; i < lines.size(); i++)
        {
            yourArrayList.add(lines.get(i).toString());
        }
    }catch(IOException io)
    {
        io.printStackTrace();
    }

关于java i/o 读取多行文件并存储为数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28499328/

相关文章:

java - 从静态方法实例化子类

java - 即使在 persistence.xml 中指定,JPA 2.1 也不会从 .sql 文件插入行

java - 返回一个回文数组 - 将 arraylist 转换为数组

javascript - Knex 在 for 循环内 promise

haskell - 在 Haskell 中将整数输出到标准输出

写端口的C语言宏

java - 使用java在第二次出现空格时分割字符串

java - 如何在 Observable 中循环并限制每次获取的项目数

java - 如何按升序排序 ArrayList<Object> android

java - 使用 ArrayList 中的名称创建文件