Aus einer Textdatei Zahlen lesen mit Leerzeichen

chillerStudent

Bekanntes Mitglied
Hallo,

ich möchte aus einer Textdatei, in der nur int Zahlen enthalten sind, die Zahlen lesen und ausgeben. In der Textdatei sind nur zwei Spalten und beliebig viele Zeilen. Zwischen den zwei Spalten gibt es immer ein Leerzeichen. Eine Zeile könnte auch leer sein. Z.B.

Code:
4
1 3
2 4

2 3

Ich habe es folgendermaßen versucht:

Java:
		String a;
		StringBuffer s = new StringBuffer();
		for(int i=0; i<8; i++) {
			a=In.readFile();  //Liest die komplette TextDatei.txt
			s.append(a);
		}
System.out.println(s); // Gibt genau das gleiche "muster" wie im obigen Beispiel aus

Wie kann jetzt jetzt nun mit dem StringBuffer nur mit den Zahlen arbeiten, ohne Leerzeichen und Zeilenumbruch?

Edit: Ich merk grad die for-schleife ist sinnlos, aber trotzdem besteht das Problem.
 
Zuletzt bearbeitet:

chillerStudent

Bekanntes Mitglied
Java:
    String a;
            StringBuffer s = new StringBuffer();
                a=In.readFile();  //Liest die komplette TextDatei.txt
                s.append(a);
    System.out.println(s); // Gibt genau das gleiche "muster" wie im obigen Beispiel aus

Wenn ich jetzt versuche die Leerzeichen zu löschen mit

Java:
s.replace(" ", "");

dann bekomme ich trotzdem die ursprüngliche Ausgabe.

Ich vermute nun, dass die Leerzeichen nicht erkannt werden ?! ???:L
 

Sturmvogel

Neues Mitglied
Meinst du ggf. so etwas hier?

du suchst bestimmt die trim()-Funktion der String-Klasse.

Java:
public static void main(String[] args)
	{
		FileReader reader = null;
		try
		{
			reader = new FileReader("c:/dl/zahlen.txt");
		}
		catch (FileNotFoundException e1)
		{
			e1.printStackTrace();
		}

		BufferedReader buffreader = new BufferedReader(reader);

		String zeile;
		StringBuffer sb = new StringBuffer();
		try
		{
			while ((zeile = buffreader.readLine()) != null)
			{
				System.out.println("Gelesene Zeile: " + zeile);
				sb.append(zeile.trim());
				//hier kannst du Zeichen für Zeichen durchgehen und nur die Zahlen wegspeichern, ausgeben, whatever...
			}
			System.out.println(sb.toString());
		}
		catch (IOException e)
		{
			e.printStackTrace();
		}

	}
 

chillerStudent

Bekanntes Mitglied
Die Methode trim() lässt ja nur die Leerzeichen am Anfang und am Ende verschwinden, aber nicht in der Mitte des Strings. Und ich möchte, dass die Leerzeichen/Zeilen in der Mitte verschwinden und ich möchte die LeerZeilen zwischenspeichern, weil ich diese später noch brauche...

In meiner TextDatei gibt es keine Leerzeichen vor und nach dem String.
 

chillerStudent

Bekanntes Mitglied
Ich habs etwas anders versucht:

Java:
		String b = s.toString();
		String[] st=new String[b.length()];

		st = b.split("\\s|" + System.getProperty("line.separator"));
		
		int leerzeilen=0;
		for(int i = 0; i < b.length(); i++) {
			if(st[i].isEmpty()) {
				leerzeilen++;
				continue;
			}
			System.out.println(i + ":" + st[i]);
		}
Jetzt bekomme ich ein java.lang.ArrayIndexOutOfBoundsException für die if-Anweisung. Was mache ich hier falsch?
 

chillerStudent

Bekanntes Mitglied
Java:
for(int i = 0; i < st.length(); i++) {

Besten Dank!

So jetzt habe ich alle Zahlen aus der Textdatei in dem Array st
Jetzt möchte ich noch die LeerZEILE, die irgendwo mittendrin auftauchen kann, auch im Array st speicher.

Ich habs so versucht:

Java:
                    for(int i = 0; i < st.length; i++) {
			if(st[i]=="\n") {
				System.out.println("leerzeile");
			}...

Er springt gar nicht in if rein. Warum?
 

njans

Top Contributor
Weil der Reader dir die Zeielnumbrüche entfernt. Eine leere Zeile wäre:

Java:
    for(int i = 0; i < st.length; i++) {
                if(st[i].isEmpty()) // oder : if(st[i].equals(""))
                    System.out.println("leerzeile");
                ...

Und Strings vergleicht man nicht mit ==. Das ist der Operator auf Referentielle Identität, das ist bei Strings aber nicht zwangsweise gegeben. Daher: equals().
 

njans

Top Contributor
Wenn da eine NPE fliegt, dann sollte man das schon sehen. In dem Fall hat man anscheinend eine Corrupted File oder der Code ist Mumpitz und tut nicht das, was man eigentlich will.
Daher ist var.equals(<String>) schon durchaus sinnvoll.
 

chillerStudent

Bekanntes Mitglied
Wenn ich es so mache, wie im code vom Sturmvogel oben, dann bekomme ich mit
Java:
System.out.println(sb.toString());
so was hier:
Code:
41 32 42 3

Wie bekomme ich es hin, dass die Ziffern pro Zeile zusammen gesetzt werden, nämlich so:

Code:
4_ 13 24 __ 23
 

chillerStudent

Bekanntes Mitglied
Ich habs jetzt hinbekommen mit zeile.charAt(0)

Aber wenn eine Zeile komplett leer ist geht das mit zeile.charAt(0) nicht mehr. Gibt es für Leerzeilen auch eine Funktion bei Character ?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Zahlen von Typ float aus einer Textdatei lesen Java Basics - Anfänger-Themen 2
W String einer Textdatei in einzelne Stringobjekte pro Zeile aufteilen Java Basics - Anfänger-Themen 14
javapingu Jeglichen Inhalt einer Textdatei nach Zeile n löschen Java Basics - Anfänger-Themen 8
NeoLexx Datenströme Lesen und Schreiben einer Textdatei Java Basics - Anfänger-Themen 2
S Importieren einer Textdatei Java Basics - Anfänger-Themen 2
J Daten einer Textdatei in ein JTable importieren. Java Basics - Anfänger-Themen 3
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
H Input/Output Inhalt einer GUI in Textdatei speichern Java Basics - Anfänger-Themen 1
F Problem mit Tabulatoren bei Zeilen zählen einer Textdatei Java Basics - Anfänger-Themen 17
C auslesen bestimmter werte einer textdatei und anschl. hineinschreiben in eine neue txt-datei. Java Basics - Anfänger-Themen 2
J Input/Output Textdatei in einer JAR lesen Java Basics - Anfänger-Themen 3
M Input/Output Objekte in einer Textdatei ablegen (Highscore) Java Basics - Anfänger-Themen 9
J durch drücken eines buttons text in einer textdatei speichern Java Basics - Anfänger-Themen 2
M Datum aus einer Textdatei holen Java Basics - Anfänger-Themen 9
C Spalte einer Textdatei einlesen Java Basics - Anfänger-Themen 10
K Richtige Pfadangabe einer Textdatei Java Basics - Anfänger-Themen 7
D Eine ganze Textdatei in einer jTextArea anzeigen Java Basics - Anfänger-Themen 4
T Am Ende einer Textdatei inhalt einfügen Java Basics - Anfänger-Themen 3
G Auslesen einer bestimmten Stelle in einer Textdatei? Java Basics - Anfänger-Themen 2
M Speichern in einer Textdatei Java Basics - Anfänger-Themen 4
S Stackinhalt in einer Textdatei schreiben Java Basics - Anfänger-Themen 6
B Problem beim einlesen einer Textdatei Java Basics - Anfänger-Themen 3
W int aus Zeilen einer Textdatei Java Basics - Anfänger-Themen 3
G eine Zeile in einer Textdatei splitten Java Basics - Anfänger-Themen 15
M Bestimmtest Wort aus einer Textdatei löschen Java Basics - Anfänger-Themen 3
M Fehler beim ein- und auslesen einer Textdatei Java Basics - Anfänger-Themen 5
G Inhalt einer Textdatei in ein Array einlesen Java Basics - Anfänger-Themen 2
C Zeilen einer Textdatei sortieren Java Basics - Anfänger-Themen 2
N Zeilenanzahl einer Textdatei bestimmen Java Basics - Anfänger-Themen 9
N Anzahl eines bestimmten Wortes in einer Textdatei Java Basics - Anfänger-Themen 6
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
_user_q Wie eine Methode/Funktion aus einer Klasse mit Constructor aufrufen? Java Basics - Anfänger-Themen 20
W Objekte einer ArrayList in txt-datei schreiben mit Paths? Java Basics - Anfänger-Themen 2
S Best Practice Fragen zu Projektstruktur einer Datenbank-Abfrage-App (MVC) Java Basics - Anfänger-Themen 13
T Variable von Objekten in einer Methode überprüfen Java Basics - Anfänger-Themen 26
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
S Textausgabe in einer For-Schleife Java Basics - Anfänger-Themen 12
M Spezifischen Wert einer Zeile aus .txt Datei entnehmen Java Basics - Anfänger-Themen 15
B Popups mit Klicksabfangen zumAusfüllen einer .ods Datei Java Basics - Anfänger-Themen 0
M RandomAccessFile int und String gleichzeitig in einer Datei Java Basics - Anfänger-Themen 49
E Suchfunktion in einer Liste Java Basics - Anfänger-Themen 39
T ungeordnete Werte-Paare in einer Liste Java Basics - Anfänger-Themen 7
FireHorses Einen Command erst nach einer Chateingabe aktivieren Java Basics - Anfänger-Themen 1
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
F wie kann ich die Position des letzten Vokals innerhalb einer Zeichenkette ermitteln? Java Basics - Anfänger-Themen 5
H Kapselung protected aber in einer Kindklasse nicht zugänglich Java Basics - Anfänger-Themen 5
R Methoden Werte einer ArrayList als Parameter übergeben. Java Basics - Anfänger-Themen 4
B Den Dateipfad einer Java Datei durch Code in Selbiger finden? Java Basics - Anfänger-Themen 10
LilliCherry Array in einer Zeile ausgeben Java Basics - Anfänger-Themen 6
B Attribute eines Objekts einer Klasse durch statische Methode einer 2. Klasse ändern? Java Basics - Anfänger-Themen 32
L Dauerhaftes Speichern einer Eingabe bei einer ArrayList Java Basics - Anfänger-Themen 26
V Hilfe bei Implementierung einer boolean Methode Java Basics - Anfänger-Themen 6
G Position einer unbekannten 3-stelligen-Zahl in einem String finden Java Basics - Anfänger-Themen 15
stormyark Fehler beim überschreiben einer Variable Java Basics - Anfänger-Themen 1
H Kompliziertes Sortieren einer ArrayList mit Objekten(Sortieren nach X und Y) Java Basics - Anfänger-Themen 11
T Permanentes speichern von Objekten in einer ArrayList Java Basics - Anfänger-Themen 6
Saiko Zeilen einer Datei einlesen Java Basics - Anfänger-Themen 3
H Erste Schritte Nach einer Zahl n soll n Mal der String untereinander ausgegeben werden Java Basics - Anfänger-Themen 3
G zwei Instanzen einer Klasse Java Basics - Anfänger-Themen 29
sserio Prüfziffer einer ISBN Nummer herrausfinden. Java Basics - Anfänger-Themen 14
J Benennung einer mir unbekannten Java - Ausdrucksweise Java Basics - Anfänger-Themen 5
LFB In einer For-Schleife alles in einer Zeile ausgeben Java Basics - Anfänger-Themen 14
sserio Wie kann man nach einer Klasse fragen? Java Basics - Anfänger-Themen 12
berserkerdq2 Wann soll ich den Stream schließen, wenn ich das in einer Methode habe? Java Basics - Anfänger-Themen 8
berserkerdq2 Wie gebe ich den Pfad zu einer Datei an, die in einem Ordner in Eclipse ist? Java Basics - Anfänger-Themen 1
M Variable in einer Schleife initialisieren Java Basics - Anfänger-Themen 46
D EinMalEins mithilfe einer for-Schleife und Array Java Basics - Anfänger-Themen 1
J int innerhalb einer Datei ändern Java Basics - Anfänger-Themen 1
D Hilfe bei einer Aufgabe mit for-Schleife Java Basics - Anfänger-Themen 6
Neuling47 Ich zerbreche mit den kopf an einer Aufgabe Java Basics - Anfänger-Themen 61
H Mit setter-Methode JLabel in einer andern Klasse ändern. Java Basics - Anfänger-Themen 40
J Zelleninhalt einer Jtable löschen Java Basics - Anfänger-Themen 2
Robert_Klaus Hamster java Simulation Hilfe bei einer Aufgabe Java Basics - Anfänger-Themen 5
stormyark 4 Bit in einer for-schleife funktioniert nicht Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben