Kann Ziffer die am Ende einer Zeile steht (.txt) nicht in int übersetzen

plissk3n

Mitglied
Hey Leute habe ein kleines Problem bei dem ich nicht weiterkomme.
Eigentlich sagt der Titel schon alles und eigentlich funktioniert mein Programm soweit auch.
Das Programm soll die Daten von Studenten die in einer Textdatei gespeichert sind in einem Datentyp Student abspeichern. Dies für jeden Studenten einzelnd.
Meine Textdatei sieht folgendermaßen aus:

Schwarzenegger, Arnold, 30.7.1947, 11071234, 6
Lee, Bruce, 27.11.1940, 11075392, 4
McClane, John, 19.3.1955, 11074634, 2
Rambo, John. J, 6.7.1946, 11043581, 5
Martin, Frank, 12.9.1967, 10998431, 7

Wobei die Datentypen folgendermaßen verteilt sind: String, String, Date, int, int

Mein Programmcode:
Java:
        In datei = new In(args[0]);
        String[] studentenString = datei.readAll().split("\n");
        Student[] studentenStudent = new Student[studentenString.length];
        
        for(int i=0; i<studentenString.length; i++){
            String[] daten = studentenString[i].split(", ");
            
            String name = daten[0];
            String vorname = daten[1];
            Datum geburtstag = new Datum(daten[2]);
            int matnr = Integer.parseInt(daten[3]);
            int semester = Integer.parseInt(daten[4]);
            
            studentenStudent[i] = new Student(name, vorname, geburtstag, matnr, semester);
        }

Die Fehlermeldung besagt, dass er die 6 (aus der Textdatei erste Zeile letzte Ziffer) nicht in ein int übersetzen kann. Warum? Hat das was mit dem Zeilenumbruch zu tun? habe ich den nicht durch das splitten mit "\n"weggemacht? Wenn ich in der Text datei überall noch ein , dranhänge funktioniert es...

Kann mir jemand das erklären?
Danke!!!
 

faetzminator

Gesperrter Benutzer
Verwende an Stelle von [c].split("\n")[/c] einfach mal [c].split("\r?\n")[/c]. Unter Windows hast du nämlich normalerweise nicht nur [c]\n[/c] sondern [c]\r\n[/c]. An Stelle von [c].split("\r?\n")[/c] wär aber IMHO [c].split("\\r?\\n")[/c] korrekter (die Zeichen werden erst in Regex und nicht vom Compiler umgesetzt).
 

plissk3n

Mitglied
Hey,
bin noch im ersten Semester und habe von einem BufferedReader noch nie was gehört, werde ich mich gleich mal drüber schlau machen.
Da wir aber bisher immer den Datentyp "In" verwendet haben (ist der eigentlich bekannt oder eher ein Exot?) glaube ich schon, dass es irgendwie gehen müsste.
Hast aber recht, wenn ich den String direkt eingebe (nich über Textdatei) dann klappt es...

Wie kann ich das denn umgehen?
Gruß

//edit:
@ faetzminator, danke, habe ich gar nicht gesehen. Probier ich mal aus. Was ist denn "\r"?
 
Zuletzt bearbeitet:

Volvagia

Top Contributor
Java:
System.getProperty("line.separator")
wäre auch ein Versuch wert, aber ich bin nach wie vor für BufferedReader. *.*

In ist kein Teil der JRE von Oracle.
 

plissk3n

Mitglied
Soooo...
("\r?\n") funktioniert! Danke dafür!
Jetzt werde ich mich mal ein bisschen über BufferedReader, Regex und LineSperatoren schlau machen :D
Gruß!
 

faetzminator

Gesperrter Benutzer
Da wir aber bisher immer den Datentyp "In" verwendet haben (ist der eigentlich bekannt oder eher ein Exot?) glaube ich schon, dass es irgendwie gehen müsste.
Das ist irgend eine Bullsh*t-Klasse deiner Uni/Schule/Lehrbuch, also sozusagen ein Exot ;)
//edit:
@ faetzminator, danke, habe ich gar nicht gesehen. Probier ich mal aus. Was ist denn "\r"?

\r = Wagenrücklauf
\n = Zeilenvorschub
Wie damals bei der Schreibmaschine ;)

Volvagia hat gesagt.:
Java:
System.getProperty("line.separator")
wäre auch ein Versuch wert, aber ich bin nach wie vor für BufferedReader. *.*
Sowas schreib ich nie. Warum? Das Format der Datei muss überhaupt nicht mit dem Systemstandard übereinstimmen. Zumindest ich verwende Win und Linux - da ist so was überhaupt nicht optimal.
 
T

Tomate_Salat

Gast
Sowas schreib ich nie. Warum? Das Format der Datei muss überhaupt nicht mit dem Systemstandard übereinstimmen. Zumindest ich verwende Win und Linux - da ist so was überhaupt nicht optimal.

tut es gerade unter windoof nicht. Kommt öfters vor, dass ich ausversehen mal eine Datei im Win-Editor öffne und den schönen Effekt habe, dass ich keine Umbrüche habe.
 

Andi_CH

Top Contributor
Der Regexp funktionert natürlich allgemein, aber ich möchte doch wieder einmal darauf aufmerksam machen, dass man, wenn es schon chracter sein sollen, der Portabilität zuliebe

Java:
	public static final String systemLineSeparator = System.getProperty("line.separator");

verwenden sollte.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
rosima26 Java nach letzter Ziffer sortieren Java Basics - Anfänger-Themen 19
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
L Zufälligen Zahlencode, ohne mehrfacher Verwendung einer Ziffer Java Basics - Anfänger-Themen 15
P Ziffer in der Mitte ausgeben Java Basics - Anfänger-Themen 12
L Jede zweite Ziffer entfernen (rekursiv) Java Basics - Anfänger-Themen 6
A Überprüfen, ober eine Zahl Ziffer enthält Java Basics - Anfänger-Themen 12
T Schauen ob eine Ziffer in einem String-Array häufiger vorkommt Java Basics - Anfänger-Themen 8
S Jede Ziffer einer Zahl auslesen, damit rechnen und beim Ergebnis wiederholen ? Java Basics - Anfänger-Themen 20
C Erste Ziffer einer Zahl Java Basics - Anfänger-Themen 46
K alle Vorkommen einer bestimmten Ziffer in einer Zahl zählen Java Basics - Anfänger-Themen 2
R Position einer Ziffer in einer Zahlenkette Java Basics - Anfänger-Themen 5
I kleinste Ziffer einer Zahl ausgeben Java Basics - Anfänger-Themen 3
A Kleinste Ziffer im Array suchen um Sortierung zu erzeugen Java Basics - Anfänger-Themen 2
M Ziffer einträge vergrößern Java Basics - Anfänger-Themen 16
Z Methoden Methode, die Ziffer aus Hexadezimal in Zehnerdezimal umrechnet Java Basics - Anfänger-Themen 5
H Anzahl Ziffer in Zahl bestimmen Java Basics - Anfänger-Themen 3
D Ziffer in Zahl Rekursiv Java Basics - Anfänger-Themen 4
B Bestimmte Ziffer Java Basics - Anfänger-Themen 27
T Methoden Maximale Ziffer von int-Wert Java Basics - Anfänger-Themen 8
J Variablen Ziffer für Ziffer einzeln speichern Java Basics - Anfänger-Themen 5
S Ziffer einer Int größer als x? Java Basics - Anfänger-Themen 7
M ziffer in zahl erkennen mit boolean Java Basics - Anfänger-Themen 12
U Erste Ziffer abspalten Java Basics - Anfänger-Themen 3
M Array, Int-wert Ziffer je Position zuweisen Java Basics - Anfänger-Themen 3
G charAT(i) eine Ziffer ? Java Basics - Anfänger-Themen 2
T Einzelne Ziffer zusammenfügen (ohne Strings oder Arrays) Java Basics - Anfänger-Themen 2
G Feststellen, ob erstes Zeichen eines Strings eine Ziffer ist Java Basics - Anfänger-Themen 11
B Position einer Ziffer im String bestimmen Java Basics - Anfänger-Themen 4
V Erste Ziffer aus einer dreistelligen "Zahl" heraus Java Basics - Anfänger-Themen 5
E Ziffer in char-Array Java Basics - Anfänger-Themen 2
D Unterschied zwischen Ziffer und Zahl Java Basics - Anfänger-Themen 9
G Java 8 - Support-Ende Java Basics - Anfänger-Themen 7
O Warum will die MEthode noch am Ende einr eturn Java Basics - Anfänger-Themen 10
S Listen , Nodes am ende anängen Java Basics - Anfänger-Themen 6
tom.j85 Doppelte Foreach Schleife: Am Ende wird immer das Gleiche Objekt eingefügt Java Basics - Anfänger-Themen 4
S Wie ende ich mein Pogrammierung? [Hilfe] Java Basics - Anfänger-Themen 1
B Datenbank, aktuelle Ende als Zahl an Label übergeben Java Basics - Anfänger-Themen 7
T Textdatei öffnen und ans Ende scrollen Java Basics - Anfänger-Themen 11
P OOP Eingabevariablen der Klasse Raum in der Methode addEvent ans Ende einer ArrayList einfügen Java Basics - Anfänger-Themen 3
kaoZ Stil ? - ....Nein nicht das Ende des Besens ^^ Java Basics - Anfänger-Themen 11
T Warum wartet Java nicht bis die for schleife zu ende ist Java Basics - Anfänger-Themen 18
S Ende des Tages in Java berechen. Java Basics - Anfänger-Themen 3
G warum wird die Schleife nicht bis zum Ende ausgeführt Java Basics - Anfänger-Themen 10
S Vokale am Ende von Wörtern löschen Java Basics - Anfänger-Themen 7
W Threads nach Thread Ende Variablen auslesen Java Basics - Anfänger-Themen 2
S Abfragen wenn das ende einer Tabelle erreicht ist Java Basics - Anfänger-Themen 8
T Erste Schritte Ende von Wörtern in einer Zeile feststellen? Java Basics - Anfänger-Themen 5
S Input/Output Reader: "null" wenn While-Ende Java Basics - Anfänger-Themen 5
G Sekunden bis zum Ende der aktuellen Kalenderwoche ermitteln! Java Basics - Anfänger-Themen 3
E Listen vereinen, wenn Elemente am Anfang/Ende übereinstimmen Java Basics - Anfänger-Themen 2
Haubitze_Broese Methode am ende nochmal startet? Java Basics - Anfänger-Themen 8
F OOP Wieder mal Zugriffsprobleme... (Lösung am Ende) Java Basics - Anfänger-Themen 11
B mit drawString direkt zeichnen, aber wie das Ende finden? Java Basics - Anfänger-Themen 3
F Cleanup bei Ende eines Threads Java Basics - Anfänger-Themen 8
B Objekt an das Ende eines Array stecken Java Basics - Anfänger-Themen 2
A Rekursion - leider ohne Ende?! Java Basics - Anfänger-Themen 2
E String am ende abschneiden Java Basics - Anfänger-Themen 6
G Befehl für Ende bei Switch-Auswahl Java Basics - Anfänger-Themen 11
G Banale Frage: While Schleife mit Bedingungsprüfung am Ende Java Basics - Anfänger-Themen 2
J An das Ende einer Datei Text anhängen Java Basics - Anfänger-Themen 2
M Zeitdifferenz von Ende - sleep(x) - Start von x abhängig Java Basics - Anfänger-Themen 6
M Am Ende eines Strings den Zeilenumbruch entfernen Java Basics - Anfänger-Themen 1
T Am Ende einer Textdatei inhalt einfügen Java Basics - Anfänger-Themen 3
S ans Ende einer Datei schreiben Java Basics - Anfänger-Themen 3
H Am ende einer existierenden Datei schreiben? Java Basics - Anfänger-Themen 8
G auf ende mehrerer threads warten Java Basics - Anfänger-Themen 2
H String an Ende einer text File anhängen Java Basics - Anfänger-Themen 2
M sting komplett bearbeiten und nicht nach zeilenumbruch ende Java Basics - Anfänger-Themen 3
Z applet mit Ende-Button beenden beim Klicken Java Basics - Anfänger-Themen 5
R Am Begin und Ende eines Strings die Leerzeichen löschen ? Java Basics - Anfänger-Themen 3
J Menü-strip beenden-knopf mit Ende des Programms belegen ? Java Basics - Anfänger-Themen 2
U offenes Ende für int[]? Java Basics - Anfänger-Themen 8
Z while (eingabe.equals("ENDE") == false) Java Basics - Anfänger-Themen 5
G in txt file text nicht am ende sondern am anfang anhängen! Java Basics - Anfänger-Themen 12
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
D 2 ArrayListen gleich sortieren bzw. eine Liste anhand einer anderen Sortieren Java Basics - Anfänger-Themen 6
ixChronos Letzten 4 Ziffern einer großen Zahl ausgeben Java Basics - Anfänger-Themen 3
P Objekt einer Methode eines anderen Objektes übergeben Java Basics - Anfänger-Themen 5
L Variablenwerte aus einer Methode übergeben Java Basics - Anfänger-Themen 2
E Arrays in einer ArrayList miteinander vergleichen Java Basics - Anfänger-Themen 12
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
Shadowrunner Variablen Gibt es eine Möglichkeit die Ziffern/Stellen einer Zahl fest zu legen? Java Basics - Anfänger-Themen 3
D remove Object von einer Liste von Obejcts Java Basics - Anfänger-Themen 3
FunkyPhil94 Wert in einer Lambda Funktion erhöhen Java Basics - Anfänger-Themen 3
T Aufruf der Methode einer Oberklasse, wenn sie in der Unterklasse überschrieben ist. Polymorphie. Java Basics - Anfänger-Themen 2
B Kommunikation mit Seriellen Schnittstellen + Integration einer lib Java Basics - Anfänger-Themen 1
A Daten aus einer HashMap aus einer DB speichern und mit neuen Werten vergleichen Java Basics - Anfänger-Themen 8
P Welches SDK für das erstellen einer ausführbaren Datei? Java Basics - Anfänger-Themen 4
D Länge einer Liste aufrufen. Java Basics - Anfänger-Themen 19
J Klassen Instanzen einer Klasse in einer anderen unabhängigen Klasse nutzen Java Basics - Anfänger-Themen 4
B Alle Strings bis zu einer Maimallänge aufzählen, die Bedingung erfüllen Java Basics - Anfänger-Themen 13
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
Soranix Erste Schritte Struktur als Anfänger // Von einer Klasse auf ein Objekt einer anderen Klasse zugreifen. Java Basics - Anfänger-Themen 6
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
T Fibonacci mit einer Hilfsmethode berechnen Java Basics - Anfänger-Themen 10
S Hilfe zu einer Aufgabe Java Basics - Anfänger-Themen 5
M Radius von einer ellipse bestimmen Java Basics - Anfänger-Themen 7
Say Fehlenden Code finden in einer while-Schleife? Java Basics - Anfänger-Themen 11
M Zufallszahl generieren mit einer linken und rechten Grenze Java Basics - Anfänger-Themen 3
N Was Passiert mit dem Namen einer Variable, wenn man diese einer Liste Hinzufügt Java Basics - Anfänger-Themen 16

Ähnliche Java Themen

Neue Themen


Oben