我整个上午都在网站上搜索,还没有找到适合我的答案。如果还有别的答案,请原谅。这可能是一个简单的问题,但由于某种原因,它在工作中难倒了我。我有一个。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);
}
这是一个使用java:
将文件分割成二维数组的好例子:CSV数据到2d数组java