Hallöchen Java Freaks und Geeks
Ich habe ein Problem, welches für jemanden der von der Materie Ahnung hat, sicher keines ist... für mich als Newbie allerdings schon.
Es geht um Folgendes: ich habe eine *.txt-Datei, deren Inhalt wie folgt aussieht:
Zeilen sind durch Zeilenumbrüche, Spalten durch mehrere Leerzeichen (und auch mal Tabs) getrennt.
Mein Wunsch ist es, die Zahlen zu addieren: ich möchte die Gesamtzahl (in diesem Fall 1 + 28 + 5 + ... + 3 = 63) und die einzelnen Spalten A (1 + 5 + 3 = 9), B und C. Dabei sollen natürlich die Zeilennummern nicht mit addiert werden und alles was keine Zahl ist, interessiert auch nicht.
Mein Ansatz ist, die Datei zeilenweise einzulesen (das mache ich mit BufferedReader und es funktioniert auch) und dann die aktuelle Zeile von links nach rechts zu durchlaufen. Die erste auftretende Zahl (außer der Zeilennummer) wird zu einer Variablen A addiert, die nächste zu B und so weiter, bis ich dann die Werte der Spalten habe (das geht sicher auch mit Arrays, aber da traue ich mich noch nicht ran).
[JAVA=1]foreach zeile {
for (int i = 0; i < zeile.length(); i++) {
if(!Character.isDigit(zeile.charAt(i))) {
"Addiere erste gefundene Zahl an aktueller Position zu A"
"Addiere zweite gefundene Zahl an aktueller Position zu B"
"Addiere dritte gefundene Zahl an aktueller Position zu C"
}
}
}[/code]
("zeile" entsprich hier der aktuellen Zeile)
Dass das kein korrekter Java-Code ist, ist mir klar. Wenn er es wäre, bräuchte ich ja keine Hilfe
Wie kann ich meine Idee realisieren? Mir fehlt dafür schlichtweg das "sprachliche" Wissen und ich knabbere an dieser Sache schon einige Tage.
Schonmal danke für Hilfe!
Gruß,
dev0815
Ich habe ein Problem, welches für jemanden der von der Materie Ahnung hat, sicher keines ist... für mich als Newbie allerdings schon.
Es geht um Folgendes: ich habe eine *.txt-Datei, deren Inhalt wie folgt aussieht:
Java:
Zeile A B C
0 1 28 z
1 5 v 19
2 3 4 3
Zeilen sind durch Zeilenumbrüche, Spalten durch mehrere Leerzeichen (und auch mal Tabs) getrennt.
Mein Wunsch ist es, die Zahlen zu addieren: ich möchte die Gesamtzahl (in diesem Fall 1 + 28 + 5 + ... + 3 = 63) und die einzelnen Spalten A (1 + 5 + 3 = 9), B und C. Dabei sollen natürlich die Zeilennummern nicht mit addiert werden und alles was keine Zahl ist, interessiert auch nicht.
Mein Ansatz ist, die Datei zeilenweise einzulesen (das mache ich mit BufferedReader und es funktioniert auch) und dann die aktuelle Zeile von links nach rechts zu durchlaufen. Die erste auftretende Zahl (außer der Zeilennummer) wird zu einer Variablen A addiert, die nächste zu B und so weiter, bis ich dann die Werte der Spalten habe (das geht sicher auch mit Arrays, aber da traue ich mich noch nicht ran).
[JAVA=1]foreach zeile {
for (int i = 0; i < zeile.length(); i++) {
if(!Character.isDigit(zeile.charAt(i))) {
"Addiere erste gefundene Zahl an aktueller Position zu A"
"Addiere zweite gefundene Zahl an aktueller Position zu B"
"Addiere dritte gefundene Zahl an aktueller Position zu C"
}
}
}[/code]
("zeile" entsprich hier der aktuellen Zeile)
Dass das kein korrekter Java-Code ist, ist mir klar. Wenn er es wäre, bräuchte ich ja keine Hilfe
Wie kann ich meine Idee realisieren? Mir fehlt dafür schlichtweg das "sprachliche" Wissen und ich knabbere an dieser Sache schon einige Tage.
Schonmal danke für Hilfe!
Gruß,
dev0815