Falsches Auslesen von Textdatei

Vintner

Mitglied
Hallo,

beim Auslesen meiner Textdatei, die 8 Nullen enthält werden nur 4 Nullen ausgelesen.
Es wird dabei irgendwie immer ein Zeichen übersprungen.


Java:
public class InputSt {
	
	public static void readFile(InputStream iFile){
		try {
			System.out.println(iFile.available()+" Zeichen vorhanden");
			while(iFile.read()!=-1){
				System.out.println("noch " + iFile.available() + " Zeichen vorhanden");
				System.out.println((char)iFile.read());
			}
			iFile.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	public static void main(String[] args){
		try {
			InputStream iFile = new FileInputStream("C:/Users/Marcel/eclipse/EOP/src/neueKlausur2/test.txt");
			readFile(iFile);
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}	
	}
}

Vielen Dank 😉
 
wenn Du ein wenig die Suchmaschine betätigst, dann findest Du viele Beispiele.
Dein Fehler ist der, dass Du den Rückgabewert beim oberen while nicht merkst und
danach auf -1 prüfst. Somit entgeht Dir immer dieses Zeichen.

Have fun
 
generell kann es übrigens auch sein, dass zwei Bytes zusammen einen char bilden sollen
 

Neue Themen


Zurück
Oben