0

我整个早上都在该网站上搜索,但没有找到适合我的答案。如果还有其他答案,请见谅。这可能是一个简单的问题,但由于某种原因,它在工作中难住了我。我有一个 .csv 文件(虽然没有限制,它可以是 .txt 文件或任何我想要的文件)现在只有两个值,幅度和频率(以后会有更多)。我编写了一个类来将一列导入到数组中,我认为我可以轻松地完成第二列。没那么容易。这是单个数组的代码。任何有关如何将其转换为多维数组的帮助将不胜感激。

public static ArrayList<Integer> readData(String filename) throws FileNotFoundException {
    Scanner scanner = new Scanner(new File(filename));
    ArrayList<Integer> aList = new ArrayList<>();
    while(scanner.hasNextInt()) {
        aList.add(scanner.nextInt());         
        }
    return aList;
}

这是我的主要课程。基本上我需要获取任何值并将它们暂时存储在多维数组中。然后它们将通过 MODBUS 和一个保持寄存器传递给控制器​​。

public static void main(String[] args) throws FileNotFoundException, Exception {

    ArrayList<Integer> aList = BrushSealDataFactory.readData("AmplitudeFrequency.csv");
    for (int i = 0; i < aList.size(); i++) {
        System.out.println(aList.get(i));
    }

    int[] aArray = new int[aList.size()];
    for (int i = 0; i < aList.size(); i++) {
        aArray[i] = aList.get(i);
    }     
4

1 回答 1

1

这是使用 java 将文件拆分为二维数组的一个很好的示例:

CSV数据到二维数组java

请注意将值正确转换为您需要的任何格式。

于 2013-04-02T19:33:42.833 回答