Textdatei einlesen funtioniert nicht

K

Kerni

Gast
Hi!
Seit einiger Zeit beschäftigt mich folgendes problem:
ich muss für mein studium ein programm schreiben( ich arbeite mit eclipse), bei dem ich einige parameter aus einer textdatei einlesen muss, welche dann im array gespeichert werden. eig -glaube ich jedenfalls- funktioniert es fast, nur den ersten wert (also die erste zeile) erkennt java nicht. zur probe hätte ich eine ausgabe in der console...
es kommt jedenfalls immer die fehlermeldung:

Exception in thread "main" java.lang.NullPointerException
at Hjgfzgdfs.main(Read.java:23)



Hier zum code:

Java:
import java.io.*;
import java.util.ArrayList;

public class Read {

	public static void main(String[] args) {
	
			BufferedReader reader;
			String zeile;
		

			try {
				reader = new BufferedReader(new FileReader("C:/Users/Martin Kern/Desktop/parameter.txt"));
				zeile = reader.readLine();			
				
				ArrayList<String[]> values = new ArrayList<String[]>();
				
				while (zeile != null) {				
					values.add(zeile.split(";"));
					zeile = reader.readLine();
					
					String str = zeile;
					String[] letters = str.split (" ");
					for (int i=0; i < letters.length; i++)
						  System.out.println (letters[i]);
					
				}
				//System.out.println(values.size());
				//System.out.println();

			} catch (IOException e) {
				System.err.println("Error2 :"+e);
			}
		}
}

hoffentlich habe ich keinen kompletten müll geschrieben, bin nämlich ein programmier-newbie :).
vielleicht könnt Ihr mir ja helfen, vielen dank im voraus!

mfg martin
 
Zuletzt bearbeitet von einem Moderator:
G

Gonzo17

Gast
Hm also ich glaube das Problem ist folgendes. Zuerst einmal liest du eine Zeile schon vor der while-Schleife und verarbeitest diese nicht, weil du (und ich denke da liegt der Fehler) direkt am Anfang der while-Schleife schon wieder eine Zeile einliest. Ich denke wenn die Zeile "zeile = reader.readLine();" ganz an den Schluss der while-Schleife schiebst, dann sollte es keine Probleme geben.
 

Basti4231

Bekanntes Mitglied
Ich habe es getestet und es lag daran, dass String str = zeile. einfach null war, bzw Zeile war null beim Zuweisen.

So sieht die Version bei mir aus, die auch funktioniert.

Java:
package testingAll;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;

public class Read {

    public static void main(String[] args) {

        BufferedReader reader;
        String zeile;

        try {
            reader = new BufferedReader(
                    new FileReader(
                            "Pfad der Datei"));

            ArrayList<String[]> values = new ArrayList<String[]>();
            String[] letters;

            while ((zeile = reader.readLine()) != null) {
                values.add(zeile.split(";"));

                letters = zeile.split(" ");
                for (int i = 0; i < letters.length; i++)
                    System.out.println(letters[i]);

            }
            // System.out.println(values.size());
            // System.out.println();

        } catch (IOException e) {
            System.err.println("Error2 :" + e);
        }
    }
}
 
G

Gonzo17

Gast
@ Basti

Ja, deine Lösung ist natürlich noch etwas eleganter. :)
Aber sie tut ja im Prinzip auch nichts anderes als das, was ich vorgeschlagen hab. Das Problem beim ersten Lösungsansatz war nämlich, dass nach der Überprüfung, ob die Zeile null ist, die nächste Zeile gelesen wird und somit kommts nach der letzten Zeile eben zu ner Exception. Deswegen muss die Zuweisung entweder ganz an den Schluss der while-Schleife oder eben direkt in die Abfrage.
 
K

Kerni

Gast
Hallo nocheinmal!

Das Einlesen funktioniert jetzt zwar, aber ich habe trotzdem noch ein kleines Problem...
Ich will, dass nur die Werte eingelesen werden, jedoch werden auch die Strichpunkte nach den Werten mit eingelesen. Wie schaff ich es, dass diese nicht erscheinen und alles was nach dem Prozentzeichen steht, als Kommentar in der Textdatei verbleibt, und nicht eingelesen wird?

Hier die Textdatei:

params.txt:

2400; % Entgelt für normalen Angestellten lt. KV [€]
3200; % Entgelt für Führungskräfte lt. KV [€]
0; % Min. jährl. Gehaltsanpassung [%]
4; % Max. jährl. Gehaltsanpassung [%]
40; % Lohnnebenkosten [%]
94; % 13./14. Entgelt - Netto- zu Bruttoverhältnis [%]
0; % 13./14. Entgelt - Lohnnebenkosten [%]
3, 6; % 13. Entgelt – Auszahlungsmonate [kommagetrennt]
9, 11; % 14. Entgelt – Auszahlungsmonat [kommagetrennt]
01.01.2010; % Simulationsbeginn [TT.MM.JJJJ]
120; % Simulationsdauer [Monate]
12; % Ausgabeintervall [Monate]

Danke im Vorraus und liebe Grüße Martin
 
G

gman

Gast
Hi,

wenn ich dich richtig verstehe möchtest du also nur den Zahlenwert speichern? Dann
könntest du den Beispielcode von Basti4231 so ändern

[JAVA=20]ArrayList<String> values = new ArrayList<String>();[/code]

und

[JAVA=24]values.add(zeile.split(";")[0]);[/code]

Dann sollte das Programm immer nur den Wert vor dem Semikolon speichern.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
KogoroMori21 Textdatei einlesen im Array (Selection Sort Algorithmus) Java Basics - Anfänger-Themen 3
A Textdatei mit stream einlesen Java Basics - Anfänger-Themen 2
A Textdatei mit BufferedReader einlesen Java Basics - Anfänger-Themen 0
F Textdatei einlesen in ArryList (Objekte abspeichern?) Java Basics - Anfänger-Themen 4
G Erste Schritte Textdatei einlesen und in Array speichern Java Basics - Anfänger-Themen 5
F Textdatei einlesen und Zeilen zählen Java Basics - Anfänger-Themen 10
S Textdatei einlesen und JFrame füllen Java Basics - Anfänger-Themen 14
C Einlesen in Array von Textdatei sehr langsam Java Basics - Anfänger-Themen 7
P Input/Output Textdatei einlesen - 1. Zeichen fehlt Java Basics - Anfänger-Themen 7
J Textdatei einlesen und ausgeben - NullPointerException Java Basics - Anfänger-Themen 5
A Textdatei einlesen - erstes Zeichen falsch Java Basics - Anfänger-Themen 20
C Spalte einer Textdatei einlesen Java Basics - Anfänger-Themen 10
C Textdatei einlesen Java Basics - Anfänger-Themen 8
M Textdatei einlesen Java Basics - Anfänger-Themen 3
B Input/Output Textdatei einlesen Windows / Linux Java Basics - Anfänger-Themen 2
F Textdatei einlesen Java Basics - Anfänger-Themen 7
C Textdatei einlesen -> Probleme Java Basics - Anfänger-Themen 3
S Textdatei stückweise einlesen Java Basics - Anfänger-Themen 7
R String einlesen, Textdatei danach durchsuchen und aus Zeile Objekt erzeugen Java Basics - Anfänger-Themen 5
E Textdatei einlesen Java Basics - Anfänger-Themen 7
D Textdatei einlesen und darin suchen Java Basics - Anfänger-Themen 11
B Textdatei als String einlesen Java Basics - Anfänger-Themen 3
A Textdatei einlesen Java Basics - Anfänger-Themen 12
W Textdatei einlesen Java Basics - Anfänger-Themen 4
N Textdatei einlesen, Filtern und Splitten Java Basics - Anfänger-Themen 4
G Textdatei einlesen Java Basics - Anfänger-Themen 2
saxman Unicode aus Textdatei einlesen und wieder abspeichern Java Basics - Anfänger-Themen 13
M Textdatei mit unterschiedlicher Spaltenanzahl einlesen Java Basics - Anfänger-Themen 4
B Problem beim einlesen einer Textdatei Java Basics - Anfänger-Themen 3
0 Textdatei in Char[] einlesen ? Java Basics - Anfänger-Themen 3
H Zahlen von Textdatei einlesen Java Basics - Anfänger-Themen 2
Dilandau textdatei einlesen und zeilen sammeln Java Basics - Anfänger-Themen 12
A Textdatei einlesen Java Basics - Anfänger-Themen 32
V Textdatei mit filechooser wählen und dann einlesen Java Basics - Anfänger-Themen 4
G Inhalt einer Textdatei in ein Array einlesen Java Basics - Anfänger-Themen 2
S Textdatei einlesen? Java Basics - Anfänger-Themen 9
R Textdatei einlesen Java Basics - Anfänger-Themen 5
D komplette Textdatei einlesen Java Basics - Anfänger-Themen 15
G Textdatei einlesen Java Basics - Anfänger-Themen 2
O Fehlermeldung bei Einlesen der textdatei. Java Basics - Anfänger-Themen 2
H Leere Zeilen in Textdatei löschen lassen Java Basics - Anfänger-Themen 5
W String einer Textdatei in einzelne Stringobjekte pro Zeile aufteilen Java Basics - Anfänger-Themen 14
N Textdatei aus Resourcen-Ordner eines Projekts/ jar-file lesen Java Basics - Anfänger-Themen 4
javapingu Jeglichen Inhalt einer Textdatei nach Zeile n löschen Java Basics - Anfänger-Themen 8
izoards Textdatei Human unreadable abspeichern Java Basics - Anfänger-Themen 17
A Eine Textdatei auslesen Java Basics - Anfänger-Themen 16
LeoDerKek Textdatei in JAR-File Java Basics - Anfänger-Themen 4
3 Textdatei Zeilenweise auslesen Java Basics - Anfänger-Themen 3
Ray19941 Über BlueJ Textdatei selbstständig erstellen lassen Java Basics - Anfänger-Themen 2
NeoLexx Datenströme Lesen und Schreiben einer Textdatei Java Basics - Anfänger-Themen 2
D Input/Output Mehrzeiligen String aus Textdatei erstellen Java Basics - Anfänger-Themen 5
M Datenbank oder Textdatei? Java Basics - Anfänger-Themen 4
X Textdatei: zwei-zeilenweise gleiche Zeilen rausschmeißen Java Basics - Anfänger-Themen 21
K Textdatei auslesen und über Mqtt schicken Java Basics - Anfänger-Themen 4
L Objekt aus Textdatei in ArrayList speichern Java Basics - Anfänger-Themen 4
J Wörter aus Textdatei suchen Java Basics - Anfänger-Themen 2
S Importieren einer Textdatei Java Basics - Anfänger-Themen 2
x-tshainge Innerhalb von Textdatei addieren Java Basics - Anfänger-Themen 9
Jinnai4 Werte in Textdatei ändern Java Basics - Anfänger-Themen 2
JDimi Textdatei mit beliebig vielen Zeilenumbrüchen erstellen Java Basics - Anfänger-Themen 2
it_is_all Bild-Pfad wird gefunden, nicht aber Textdatei-Pfad Java Basics - Anfänger-Themen 8
M Best Practice Daten-Import /Trabsfomration aus Textdatei Java Basics - Anfänger-Themen 12
G Wert in Textdatei ersetzen? Java Basics - Anfänger-Themen 2
J Daten einer Textdatei in ein JTable importieren. Java Basics - Anfänger-Themen 3
C Input/Output Textdatei vom Java-Programm nicht geladen Java Basics - Anfänger-Themen 58
T Länge einer Textdatei Java Basics - Anfänger-Themen 11
S Übertragen einer Textdatei in ein 2d-Array Java Basics - Anfänger-Themen 2
N Integers aus Textdatei auslesen und mehrere Arrays erstellen Java Basics - Anfänger-Themen 9
T Textdatei öffnen und ans Ende scrollen Java Basics - Anfänger-Themen 11
J Textdatei filtern und bearbeiten Java Basics - Anfänger-Themen 1
C Textdatei oder doch eine Datenban Java Basics - Anfänger-Themen 15
J Input/Output Tilemap effizient speichern als Textdatei Java Basics - Anfänger-Themen 7
J Input/Output Zeile in Textdatei ändern Java Basics - Anfänger-Themen 14
M Textdatei(en) in .jar schreiben Java Basics - Anfänger-Themen 5
K Textdatei auslesen Java Basics - Anfänger-Themen 10
H Input/Output Inhalt einer GUI in Textdatei speichern Java Basics - Anfänger-Themen 1
K Erste Schritte Textdatei -> Array Java Basics - Anfänger-Themen 1
F Problem mit Tabulatoren bei Zeilen zählen einer Textdatei Java Basics - Anfänger-Themen 17
L Namen aus Textdatei auslesen Java Basics - Anfänger-Themen 1
E Textdatei kopieren funktioniert nicht Java Basics - Anfänger-Themen 12
M Zweidimensionales Array aus Textdatei gewinnen Java Basics - Anfänger-Themen 6
C Aus einer Textdatei Zahlen lesen mit Leerzeichen Java Basics - Anfänger-Themen 11
S Methoden Textdatei auslesen Java Basics - Anfänger-Themen 11
G Textdatei auf Dubletten prüfen Java Basics - Anfänger-Themen 8
T Textdatei Zeile löschen? Java Basics - Anfänger-Themen 4
T Textdatei beschreiben/bearbeiten Java Basics - Anfänger-Themen 4
C auslesen bestimmter werte einer textdatei und anschl. hineinschreiben in eine neue txt-datei. Java Basics - Anfänger-Themen 2
S Textdatei lesen, Methode gibt nur die letzte Zeile aus. Warum? Java Basics - Anfänger-Themen 5
R Werte in eine Textdatei schreiben Java Basics - Anfänger-Themen 20
J Neue Zeile an bestimmter Stelle in Textdatei einfügen Java Basics - Anfänger-Themen 2
D Textdatei in geschachtelte Array speichern Java Basics - Anfänger-Themen 17
T Scanner für große Textdatei Java Basics - Anfänger-Themen 11
A Unterschied Textdatei und Quelltextdatei Java Basics - Anfänger-Themen 5
J Input/Output Textdatei in einer JAR lesen Java Basics - Anfänger-Themen 3
T Erste Schritte einzelne Wörter aus textdatei lesen... Java Basics - Anfänger-Themen 4
S Textdatei im Internet lesen und editieren Java Basics - Anfänger-Themen 2
M Input/Output Objekte in einer Textdatei ablegen (Highscore) Java Basics - Anfänger-Themen 9
P CSV Daten in Textdatei Speichern Java Basics - Anfänger-Themen 3
K Input/Output Eingelesenedaten von Scanner als Textdatei ausgeben? Java Basics - Anfänger-Themen 2
N Input/Output Konsolenausgabe in Textdatei speichern/umleiten Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben