003
30.10.2005, 16:13 Uhr
typecast
aka loddab (Operator)
|
Der Grund ist wohl eher die java.lang.NullPointerException, die ausgeloest wird, sobald das Ende der Datei erreicht ist.
C++: |
tmp = leser.readLine(); if(tmp.length()>0)
|
Hier liest du eine Zeile aus der Datei. Ist der Stream am Dateiende angekommen, wird tmp auf null gesetzt. In der naechsten Zeile greifst du auf diesen null-Wert zu und bekommst vollgerichtig eine Excpetion. Das fuehrt dazu, dass der BufferedWrite nicht gesynct wird (es wird also nix geschrieben).
Du musst tmp direkt nach dem lesen ueberpruefen. Ausserdem gehoert bei der NullPointerException noch ne Fehlermeldung hin -- All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925) |