Zwei leerzeilen beim Einlesen einer Textdatei

Matze

Weltenwanderer
Hallo,

ich lese mitteles FileReader und BufferedReader eine Textdatei aus und stelle diesen Text dann in einer HTML TextArea dar. Allerdings wird unten am Text immer zwei extra Zeilen eingefügt, einmal eine mit nur einem Leerzeichen und eine komplett leere.
Java:
     /**
     * Liest die Text Datei ein
     */
    public String readText(){

	StringBuffer strBuff = new StringBuffer();

	try{

	    BufferedReader in = new BufferedReader ( new FileReader (GlobalVariables.strPathFileText) );

	    while( in.ready() ) {
	        strBuff.append(in.readLine());
		  strBuff.append("\n");
	    }

	    in.close();

        }
        catch(Exception ex){
	      ex.printStackTrace();
        }

	return(strBuff.toString());
    }
Wie kann ich abfragen, ob es die letze Zeile ist, damit ich dort nicht auch mit strBuff.append("\n"); eine Leerzeile einfüge?
 
Ich hätte es vielleicht so gelöst?

Java:
        boolean first = true;
        while( in.ready() ) {

            if(first) {

                 strBuff.append(in.readLine());
                 first = false;

            } else {

                 strBuff.append("\n");
                 strBuff.append(in.readLine());

        }
 
Oder so:


Code:
if(in.ready())
    strBuff.append(in.readLine());

while( in.ready() ) {
    strBuff.append("\n");
    strBuff.append(in.readLine());
}
 
Die Ideen finde ich gut.
Hab das selbst jetzt damit gelöst, dass ich einfach am ende das hier angehängt habe:
Java:
strBuff.deleteCharAt(strBuff.length()-1);
Werde ich mir mal die schönere Lösung raussuchen ;)
 

Neue Beiträge

Zurück