Ich habe diese Textdatei und ich muss sie in ein Java-Programm extrahieren, um Arraygrößen und ihre Werte zu bestimmen. Ich kann jede Zeile lesen, aber ich kann den Wert nicht bekommen für Linien, die viele Zahlen enthalten. Plus, wie Element in der dritten Zeile zählen (0 2)Wie man das aus der Datei liest und jeden Wert allein erhält
4
5
0 2
0 1 0.6
0 2 0.2
0 3 0.5
1 3 0.8
2 3 0.3
diesen Code, ich verwende.
List<Integer> list = new ArrayList<Integer>();
File file = new File("D:\\ALGORTHIMS\\MASTER LEVEL\\dr. khaled\\assignment 1\\text.txt");
BufferedReader reader = null;
List<Double> ints = new ArrayList<Double>();
try {
reader = new BufferedReader(new FileReader(file));
String text = null;
while ((text = reader.readLine()) != null) {
if (text.length() == 1) {
list.add(Integer.parseInt(text));
} else {
String[] strs = text.trim().split("\\s+");
for (int i = 0; i < strs.length; i++) {
ints.add(Double.parseDouble(strs[i]));
}
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (reader != null) {
reader.close();
}
} catch (IOException e) {
}
}
//print out the list
System.out.println(list);
System.out.println(ints);
'Integer.parseInt (Text)' wird nicht funktionieren, weil Sie 'float' Zahlen in der Datei haben. Verwenden Sie 'text.split (" \\ s + ")', um die Zahl nach dem Leerzeichen zu teilen. –
Es funktioniert nicht, überprüfe meine Updates – SubhiMMM