Datei auslesen und Array schreiben?!

mavinatic

Bekanntes Mitglied
Hallo ich sitze an eine komisch kniffligen aufgabe!

Ich hab eien Datei die folgener maßen aussieht

Java:
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

Diese Datei möchte jede Zahl in ein 2Dimensionales Array schreiben, aber irgendwie haperts noch am auslesen und splitten der 0en...

Java:
public void readFile() throws FileNotFoundException
	{
		Scanner scn = new Scanner(new File("src/Data/Map/map.dat"));
		ArrayList<String> fileCon = new ArrayList<String>();
		
		while(scn.hasNext())
		{
			fileCon.add(scn.nextLine());
			
		}
		
		String[] swap = new String[fileCon.size()];
	
		for(int i=0; i<fileCon.size(); i++)
		{
			//System.out.println(fileCon.get(i));
			 swap = fileCon.get(i).split(",");
			
		}
		for (int j=0; j<swap.length; j++)
		{
			System.out.print(swap[j]);
		}
	
	}

Es kommen am Ende mehr 0en raus als eigentlich drin sind je zeile :O Kann mir jemand das erklären?!
 

nrg

Top Contributor
du redest von einem 2d array und benutzt ein normales :). Also kann da schonmal was nicht stimmen

Zweitens initialisierst du das Array mit fileCon.size(). Das ist die Anzahl der Zeilen. Dabei werden alle felder mit 0 gefüllt (weil primitiv). Dh du kannst ja garnicht wissen welche 0 von der File kommt und welche nicht.

Ich versuch dein Programm mal in Worte zu fassen:

- du schreibst Zeile für Zeile in eine Liste
- du initialisierst ein normales Array mit Länge = Anzahl Zeilen
- dann iterierst du da durch und überschreibst jedesmal dieses array mit dem split
- am ende hast du also den letzten split + restliche nullen falls split < list.size()
 

mavinatic

Bekanntes Mitglied
Ich lese alle Zahlen in dem Fall alle 0en ein Zeile für Zeile während des vorgangs split ich die damit die komma wegfallen. und die gesplitteten Zahlen in 1 Array = 1.Dimension und dann je Zeile die 2.Dimension ;-)
 

Michael...

Top Contributor
@nrg: Ein String Array wird nicht mit 0en initialisiert, ausserdem erhält man von split jedesmal ein neues Array, daher kann split < list.size() gar nicht sein.

In dem Code Bsp wird nur die letzte Zeile ausgegeben --> vielleicht enthält die letzte Zeilen mehr 0en??? Ansonsten kann man nur raten.

Die zwei letzten for Schleifen sind nur zum testen oder?
 

mavinatic

Bekanntes Mitglied
ich weiß ja nicht was ihr daran nicht versteht...mal ein beispiel


for(int x=0;x<map.length; x++)
{
for(int y=0;y<map[x].length; y++)
{
int[x][y] map = .... // HIER wird jede Zeile eingelesen gesplittet y=die Zahlenmenge PRO Zeile x=Reihen
}
}
 
Zuletzt bearbeitet:

nrg

Top Contributor
@nrg: Ein String Array wird nicht mit 0en initialisiert, ausserdem erhält man von split jedesmal ein neues Array, daher kann split < list.size() gar nicht sein.

In dem Code Bsp wird nur die letzte Zeile ausgegeben --> vielleicht enthält die letzte Zeilen mehr 0en??? Ansonsten kann man nur raten.

Die zwei letzten for Schleifen sind nur zum testen oder?

ah ok. war ich aufm schlauch gestanden und dachte das ist ein int array
 

Michael...

Top Contributor
Wenn Du ein "zweidimensionales" Feld haben willst musst Du auch eines erzeugen:
Java:
Scanner scn = new Scanner(new File("src/Data/Map/map.dat"));
//Scanner scn = new Scanner("0,0,0,0\n0,0,0,0\n0,0,0,0"); Alternative zum Testen ohne Datei
ArrayList<String> fileCon = new ArrayList<String>();
while (scn.hasNext()) 
	fileCon.add(scn.nextLine());

String[][] content = new String[fileCon.size()][];
for (int i=0; i<content.length; i++) {
	content[i] = fileCon.get(i).split(",");
	System.out.println("Inserted: "+ java.util.Arrays.toString(content[i]));
}

System.out.println("\nKontrollausgabe:");
for (int i=0; i<content.length; i++) {
	for (int j=0; j<content[i].length; j++)
		System.out.print(content[i][j] + " ");
	System.out.println();
}
 

nrg

Top Contributor
um dann wieder was richtiges zu schreiben (hoff ich zumindest :D):
Java:
		......
		List<String> fileCon = new ArrayList<String>();
		......
		String[][] swap = new String[fileCon.size()][];

		for(int i=0; i<fileCon.size(); i++)
		{
			//System.out.println(fileCon.get(i));
			swap[i] = fileCon.get(i).split(",");

		}
		for (int i=0; i<swap.length; i++)
		{
			for (int j=0; j<swap[i].length; j++)
			{
				System.out.print(swap[i][j] + "\t");
			}
			System.out.print("\n");
		}

edit: diesmal nicht falsch aber dafür zu langsam :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Datei auslesen und 2D-Array anlegen Java Basics - Anfänger-Themen 1
Voreck Array aus txt datei auslesen Java Basics - Anfänger-Themen 2
Z Datei auslesen und in 2dim Array packen. Java Basics - Anfänger-Themen 27
J 2-dim Array auslesen und in Datei schreiben Java Basics - Anfänger-Themen 10
N String/char-array aus datei auslesen Java Basics - Anfänger-Themen 2
B String-Array in Datei speichern und wieder auslesen Java Basics - Anfänger-Themen 3
S Daten aus Import Datei auslesen und sortieren Java Basics - Anfänger-Themen 2
E TIF Datei auslesen Java Basics - Anfänger-Themen 2
sserio TXT-Datei Auslesen und den Wert jedes Namen ausrechnen etc. Java Basics - Anfänger-Themen 37
J Datei aus Netzwerk auslesen Java Basics - Anfänger-Themen 9
J Json Datei auslesen Java Basics - Anfänger-Themen 4
S CSV Datei auslesen und anders darstellen Java Basics - Anfänger-Themen 2
N Java CSV Datei auslesen Java Basics - Anfänger-Themen 6
J Datei auslesen (nur bestimmte Stellen) Java Basics - Anfänger-Themen 2
G If / While Programm (Datei auslesen) Java Basics - Anfänger-Themen 6
S Aus einer .bz2 Datei auslesen Java Basics - Anfänger-Themen 2
D Datei auslesen & Werte in Variable speichern Java Basics - Anfänger-Themen 12
B .txt. Datei auslesen und bestimmten Wert wiedergeben Java Basics - Anfänger-Themen 5
das_leon Alle Zeilen einer CSV-Datei auslesen Java Basics - Anfänger-Themen 1
T class Datei auslesen Java Java Basics - Anfänger-Themen 5
M Aus Datei auslesen und untersuchen ob diese Zeile schon vorhanden ist Java Basics - Anfänger-Themen 3
S Text aus einer HTML Datei auslesen Java Basics - Anfänger-Themen 1
M Eigenschaften einer Datei auslesen Java Basics - Anfänger-Themen 5
OlafHD Datei Auslesen Java Basics - Anfänger-Themen 6
J Datei auslesen klappt nicht Java Basics - Anfänger-Themen 4
I Informationen aus XML Datei auslesen Java Basics - Anfänger-Themen 2
L Variablen aus TXT Datei auslesen und vergleichen. Java Basics - Anfänger-Themen 5
M Datei-Namen aus .jar auslesen Java Basics - Anfänger-Themen 7
L Java Text datei nur bis zu einem Punkt auslesen? Java Basics - Anfänger-Themen 3
T .jar Datei als Ordner benutzen/ Dateien aus .jar Datei auslesen Java Basics - Anfänger-Themen 3
B Datei zeilenweise auslesen Java Basics - Anfänger-Themen 7
J Zeilen aus einer .txt-Datei auslesen und Variablen zuweisen Java Basics - Anfänger-Themen 11
Traxter Cookie Datei auslesen Java Basics - Anfänger-Themen 4
B CSV-Datei auslesen, in Liste speichern und sortieren Java Basics - Anfänger-Themen 20
J Datensätze aus Txt Datei auslesen - Datensätze durch stöbern Java Basics - Anfänger-Themen 5
C auslesen bestimmter werte einer textdatei und anschl. hineinschreiben in eine neue txt-datei. Java Basics - Anfänger-Themen 2
N Bestimmte Zeile aus einer Datei auslesen Java Basics - Anfänger-Themen 10
R csv-Datei auslesen und ausgelesene Daten in neue csv-Datei speichern Java Basics - Anfänger-Themen 2
M Zahlen als Bytes in eine Datei speichern, daraus wieder auslesen Java Basics - Anfänger-Themen 2
L OOP Mit RandomAccesFile auslesen und in Datei schreiben Java Basics - Anfänger-Themen 8
F TextArea auslesen und in Datei speichern Java Basics - Anfänger-Themen 4
J Problem beim auslesen von Int Wert aus YML-Datei Java Basics - Anfänger-Themen 6
B Datei Auslesen + Schleife Java Basics - Anfänger-Themen 7
J Input/Output Daten in Datei schreiben und auslesen Java Basics - Anfänger-Themen 23
Y Datei mit relativem Dateipfad per FileReader aus .JAR heraus auslesen Java Basics - Anfänger-Themen 4
J Input/Output Datei auslesen, Pfad eingeben Java Basics - Anfänger-Themen 4
A HTML-Code auslesen und mit einem Wert in der property-Datei vergleichen Java Basics - Anfänger-Themen 2
E Text Datei Daten Auslesen und Schreiben Java Basics - Anfänger-Themen 3
P Properties Datei auslesen? Komfortabeler? Java Basics - Anfänger-Themen 2
K Mein Programm... Heute: Settings-Datei in .jar speichern und auslesen Java Basics - Anfänger-Themen 9
V Bestimmte Stellen aus .txt Datei auslesen Java Basics - Anfänger-Themen 11
Strahlungsleck Input/Output Zahlen aus Text-Datei auslesen Java Basics - Anfänger-Themen 6
R txt Datei auslesen Java Basics - Anfänger-Themen 3
R .log-Datei dauerhaft auslesen Java Basics - Anfänger-Themen 7
S Strings und Binärdaten aus der gleichen Datei auslesen Java Basics - Anfänger-Themen 24
V Datei in Ordner auslesen -> neuer Ordnername Java Basics - Anfänger-Themen 7
S Intwert aus einer txt.datei auslesen Java Basics - Anfänger-Themen 3
J Pfad bzw. Namen einer Datei auslesen Java Basics - Anfänger-Themen 6
C Arraylist in Txt Datei speichern und auslesen Java Basics - Anfänger-Themen 8
P mit java text-datei auslesen und weiter bearbeiten Java Basics - Anfänger-Themen 3
M ständiges auslesen einer .txt datei Java Basics - Anfänger-Themen 2
X Java txt datei auslesen Java Basics - Anfänger-Themen 10
M Sonderzeichen in einer Datei auslesen Java Basics - Anfänger-Themen 3
A Textdatei von URL auslesen und in Datei schreiben Java Basics - Anfänger-Themen 5
H Datei Byteweise mit wechselnden "Templates" auslesen Java Basics - Anfänger-Themen 2
Streeber Datei aus JAR auslesen Java Basics - Anfänger-Themen 3
B Datei auslesen Java Basics - Anfänger-Themen 2
G POI: Aus einer Datei auslesen und in eine andere Datei speichern Java Basics - Anfänger-Themen 18
manuakasam Datei auslesen - Geschwindigkeitsproblem Java Basics - Anfänger-Themen 2
C Zeilen aus einer Datei auslesen Java Basics - Anfänger-Themen 4
A Auslesen einer datei mit Scanner Java Basics - Anfänger-Themen 4
V Sequentielles Auslesen einer Datei Java Basics - Anfänger-Themen 7
T auslesen einer ini Datei Java Basics - Anfänger-Themen 13
G Datei blockweise auslesen Java Basics - Anfänger-Themen 6
Z Wie Datei effizient auslesen? Java Basics - Anfänger-Themen 1
M Auslesen einer Datei im Jar File Java Basics - Anfänger-Themen 5
T ArrayList in Datei speichern und auslesen Java Basics - Anfänger-Themen 7
J Datei auslesen und in Tabelle einfügen Java Basics - Anfänger-Themen 6
B kleine Probleme beim auslesen einer m3u Datei Java Basics - Anfänger-Themen 3
1 Zeit und Datum der Letzten Bearbeitung einer Datei auslesen Java Basics - Anfänger-Themen 3
P JSP - Daten aus externer Datei auslesen und anzeigen Java Basics - Anfänger-Themen 3
H2SO3- kompletten string aus datei auslesen (nicht .readline) Java Basics - Anfänger-Themen 21
O Text von Homepage via Java auslesen und in Text Datei speich Java Basics - Anfänger-Themen 1
T Bestimmte Zeile aus einer .txt-Datei auslesen? Java Basics - Anfänger-Themen 10
H Russische Zeichen in Datei schreiben und wieder auslesen Java Basics - Anfänger-Themen 3
H csv datei mit java auslesen und in konsole wiedergeben Java Basics - Anfänger-Themen 22
H Datei auslesen . Java Basics - Anfänger-Themen 33
M Probleme beim Datei auslesen Java Basics - Anfänger-Themen 6
S Text datei auslesen Java Basics - Anfänger-Themen 20
U Enumerationswerte aus XSD-Datei auslesen Java Basics - Anfänger-Themen 3
H Datei auslesen Java Basics - Anfänger-Themen 13
D Problem beim auslesen von txt datei. Java Basics - Anfänger-Themen 26
S Datei auslesen und neue schreiben (keine Textdatei) Java Basics - Anfänger-Themen 2
M Filesplitting - Teile einer Datei auslesen Java Basics - Anfänger-Themen 7
S ini Datei auslesen und in programm speichern Java Basics - Anfänger-Themen 2
J Datei aus unterschiedlichen Typen auslesen Java Basics - Anfänger-Themen 6
S Zahlen aus einer Datei auslesen Java Basics - Anfänger-Themen 11
C Probleme mit Auslesen einer Datei Java Basics - Anfänger-Themen 6
B Datei auslesen Java Basics - Anfänger-Themen 3
G Bestimmte Bereiche einer Datei auslesen Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben