FileReader und Writer gleichzeitg nutzen

Burny91

Mitglied
Hi Leute,

arbeite gerade an einem Highscore. Die Daten dafür speichere ich in einer CSV-Datei. Diese sind nach folgendem Schema aufgebaut: LEVEL;NAME;SCORE\n

In meiner Methode lineReplace will ich den größten Eintrag von den 10 in der CSV Datei durch einen neuen, kleineren Wert ersetzen. SortedList gibt mir an Stelle [0][0] die Zeile in der CSV-Datei an welcher sich der Eintrag mit dem größten Wert befindet. Wenn ich nun die Methode ausführe, löscht er die kompletten Einträge in meiner CSV-Datei. Wie kommt das?

Kann man nicht gleichzeitig eine Datei einlesen und an einer bestimmten Zeile etwas ändern??

Need help :(
Java:
public void lineReplace(String myurl, String level, String newName, String newTime, Integer[][] sortedList) {
		Integer replaceLine = sortedList[0][0]; // Gibt mir Zeile 7 an -> Bei dem Wert 222357
		Integer lineCounter = 0;
		Writer f1;
		BufferedWriter f2;
		try {
			f1 = new FileWriter(myurl);
			f2 = new BufferedWriter(f1);
			BufferedReader in = new BufferedReader(new FileReader(myurl));
			String zeile = null;

			//Ersetzt folgende replaceLine mit neuer Zeile
			while ((zeile = in.readLine()) != null) {
				lineCounter++;
				if (zeile.equals(replaceLine)){
					f2.write(level.toUpperCase() + ";" + newName + ";" + newTime);
				} else{
					f2.close();
					f1.close();
				}
			}

			f2.close();
			f1.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

Java:
public void checkMaxEntry(String url, String level, Integer newScore, String newName) {
		ArrayList<Integer> checkMax = searchArrayMax(csvfile);

		Integer entryCounter = 0;
		Integer lineCounter = 0;
		Integer size;
		if (level.equals("EASY")) {
			size = checkMax.get(0);
		} else if (level.equals("MEDIUM")) {
			size = checkMax.get(1);
		} else if (level.equals("HARD")) {
			size = checkMax.get(2);
		} else {
			size = checkMax.get(3);
		}

		/*Wenn 10 Leveleintraege getan wurden, wird ueberprueft ob der neue Wert
		 * besser ist als der schlechteste der Highscoreliste
		 */
		if (size.equals(10)){
			Integer[][] levelEntries = new Integer[size][2];

			try {
				BufferedReader in = new BufferedReader(new FileReader(url));
				String zeile = null;

				//Es wird nach allen 10 Eintraegen des jeweiligen Levels gesucht
				while ((zeile = in.readLine()) != null) {
//					System.out.println("Gelesene Zeile: " + zeile);
					lineCounter++;
					split = zeile.split(";");
					
					if (split[0].equals(level)) {
						levelEntries[entryCounter][0] = lineCounter;
						levelEntries[entryCounter][1] = new Integer(split[(2)]);
						entryCounter++;
					}
				}
				//
				Bubblesort mySortetArray = new Bubblesort();
				Integer[][] sortedLevelEntries = mySortetArray.bubbleSort(levelEntries);
				
				//Neuer Eintrag wird an der Stelle des Schlechtesten ueberschrieben
				if (sortedLevelEntries[0][1] > newScore){
					lineReplace(url, level, newName, newScore.toString(), sortedLevelEntries);
					
				//Ist der Wert schlechter erhaelt man keinen Eintrag in die Highscoreliste 
				}else{
					System.out.println("Sorry zu schlecht!");
				}
				
				System.out.println("sortierteListe Eintrag [0][0]"+sortedLevelEntries[0][0]);
				
			} catch (IOException e) {
				e.printStackTrace();
			}
		}else {
			writeFile(csvfile, level, newName, newScore.toString());
		}
		
	}

Java:
public static void main(String args[]) {
		CSVReader r = new CSVReader();
		r.checkMaxEntry(r.csvfile, "HARD", new Integer(22), "Slowenien");
	}

Hier meine CSV-Datei:
Java:
HARD;Japan;99
HARD;Japan;99
HARD;China;2223
HARD;Polen;23223
HARD;Spanien;1111
HARD;Frankreich;55544
HARD;Madrid;222357
HARD;Oesterreich;9000
HARD;Ungarn;32323
HARD;Romaenien;8877
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D FileWriter / FileReader Problem Java Basics - Anfänger-Themen 10
S Mit FileReader lesen, in ArrayList speichern Java Basics - Anfänger-Themen 4
T filereader , file aus programm einlesen Java Basics - Anfänger-Themen 12
W FileReader - Bitte um Erklärung Java Basics - Anfänger-Themen 7
L FileReader Java Basics - Anfänger-Themen 7
L FileReader Java Basics - Anfänger-Themen 2
D Hilfe bei FileReader und BufferedReader Java Basics - Anfänger-Themen 2
Y Datei mit relativem Dateipfad per FileReader aus .JAR heraus auslesen Java Basics - Anfänger-Themen 4
A FileReader Problem Java Basics - Anfänger-Themen 14
D JFileChooser & FileReader Java Basics - Anfänger-Themen 4
L Input/Output FileReader Pfadangabe Java Basics - Anfänger-Themen 7
L While-Schleife und filereader Java Basics - Anfänger-Themen 5
L FileReader und Filewriter Java Basics - Anfänger-Themen 4
F wo datei für filereader ablegen? Java Basics - Anfänger-Themen 11
M FileReader Zeilenangabe Java Basics - Anfänger-Themen 22
L RandomAcessFile getFilePointer in normalen FileReader Java Basics - Anfänger-Themen 4
H OOP FileReader Einleseergebnis Java Basics - Anfänger-Themen 5
R Von wo nimmt der FileReader seine daten Java Basics - Anfänger-Themen 7
J fileReader: wird dateipfad benötigt? Java Basics - Anfänger-Themen 8
Burny91 FileReader / FileWriter / BufferedWriter An einer bestimmten Zeile String ersetzten Java Basics - Anfänger-Themen 2
F FileReader Frage Java Basics - Anfänger-Themen 3
M Frage zur Klasse FileReader Java Basics - Anfänger-Themen 6
G Character-orientierte File-Streams mit der Klasse FileReader Java Basics - Anfänger-Themen 5
Hamstinator Frage zu BufferedReader/FileReader Java Basics - Anfänger-Themen 4
F FileReader Methode Read() int? Java Basics - Anfänger-Themen 2
calzone FileReader, lesen ohne die Datei zu überschreiben? Java Basics - Anfänger-Themen 3
K FileReader Systempfad Mac Java Basics - Anfänger-Themen 11
hdi FileReader / BufferedReader langsam? Java Basics - Anfänger-Themen 3
A Filereader - An den Anfang des File springen Java Basics - Anfänger-Themen 2
N Pfad und FileReader? Java Basics - Anfänger-Themen 2
S Filereader funktioniert nicht! Fehlersuche Java Basics - Anfänger-Themen 9
K Problem mit .toString und FileReader Java Basics - Anfänger-Themen 2
G filereader Java Basics - Anfänger-Themen 5
G zusätzliche "" bei Pfadangabe z.B. bei FileReader Java Basics - Anfänger-Themen 2
B Problem mit Filereader und filewriter Java Basics - Anfänger-Themen 20
H IOException bei FileReader Java Basics - Anfänger-Themen 3
P BufferedReader / FileReader Key und Values Java Basics - Anfänger-Themen 7
K FileReader BufferedReader & Arrays Java Basics - Anfänger-Themen 14
D Wie funktionieren FileReader Java Basics - Anfänger-Themen 6
M FileReader.read(char[]) - Größe des Arrays? Java Basics - Anfänger-Themen 4
R FileInputStream.read() != FileReader.read(). Pls Help Java Basics - Anfänger-Themen 5
S FileReader-Problem Java Basics - Anfänger-Themen 2
G Textdatei auslesen - Text anfügen - FileReader Java Basics - Anfänger-Themen 18
G FileReader Java Basics - Anfänger-Themen 10
P FileReader Java Basics - Anfänger-Themen 2
V filereader soll aus config.txt pfade lesen Java Basics - Anfänger-Themen 6
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
S Input/Output Reader/Writer finden file nicht Java Basics - Anfänger-Themen 3
M Writer für unterschiedliche Obj/inbt/double erstellen? Java Basics - Anfänger-Themen 1
D Komplizierte Frage zum Writer Java Basics - Anfänger-Themen 4
Textsurfer Erste Schritte CSV Import Reader Writer Java Basics - Anfänger-Themen 0
N Input/Output Java IO Writer - Subklassen Java Basics - Anfänger-Themen 19
J Java Writer funktioniert nicht mehr Java Basics - Anfänger-Themen 8
Sogomn Input/Output Reader, Writer und Streams Java Basics - Anfänger-Themen 6
D Input/Output Writer schreibt nicht in Subprozess Java Basics - Anfänger-Themen 3
N Word oder Open Office Writer Java Basics - Anfänger-Themen 10
M Unterschied append / write aus der Klasse Writer Java Basics - Anfänger-Themen 2
K BufferedReader/Writer trotz Cache? Java Basics - Anfänger-Themen 9
L Streams und Reader/Writer Java Basics - Anfänger-Themen 8
I Writer an Objekt syncen - aber wie? Java Basics - Anfänger-Themen 2
T Writer/Reader Problem Java Basics - Anfänger-Themen 4
9 Writer funktioniert nicht Java Basics - Anfänger-Themen 9
G mit Buffered Writer innerhalb einer Datei Zeilen etc. einfüg Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben