我正在处理一个项目,我们有一个类似的.txt文件:
0 4 8 4 8
0 4 4 1 8
5 6 2 1 0
然后我想阅读它并将其添加到我的2D ArrayList但我多次失败(异常等等)。
我有一个方法可以在ArrayList中添加一整行Double,但问题是我不知道如何读取文件,检查是否有"行分隔符",如果有一个重新读取该行,然后将找到的每个数字转换为Double,然后使用我的addLine方法将双打添加到我的2D ArrayList。
我已经尝试了很多东西,这是我做过的最新尝试:
public static Matrice lectureMatrice(String fileName) {
//this is the matrix we will fill with the lines
Matrice mat = null;
//this is the newLine ArrayList we will fill then add
List<Double> nouvelleLigne = new ArrayList<Double>();
Double element = null;
File file = new File(fileName + ".txt");
try (Scanner scan = new Scanner(new FileReader(file))){
while(scan.hasNextDouble()) {
element = scan.nextDouble();
nouvelleLigne.add(element);
}
//adding the whole line to the matrix
mat.ajouterLigne(nouvelleLigne);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (ContrainteDoublonListeException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return mat;
}