M
melbe
Gast
Hallo!
Hoffe jemand kann mir helfen!
Bin gerade am testen eines Socket Proggies....
Lese ein file vom einem unix-server und möchte es lokal speichern.
Mein problem:
Das wird per Buffered Reader (read.Line()) Zeilen-weise gelesen und geschrieben)
Für den Zeilenumbruch setze ich nach jederm in.readLine() ein + "\n" dran, kein problem.
ABER:
Jedes File das ich vom Server bekomme) endet immer mit "\n\.\n"
Sprich:
---leere zeile---
.
---leere zeile----
Dies möchte ich beim downgeloadeten file nicht dabei haben! :!:
Ich habe etwas von "escapen" gehört, konkret kann ich es leider nicht anwenden,
ich müsste also irgendwie abfragen ob ich einer zeile das "\n.\n" enthalten ist (das wäre dann die letzte)
wie mache ich das aber, denn bei readLine() wird es ja ausser acht gelassen!
???:L
Hier ein bisschen code:
hoffe ich habe das verständlich erläutert und hjemand ist so nett und kann mir helfen!
:bahnhof:
Danke melbe
Hoffe jemand kann mir helfen!
Bin gerade am testen eines Socket Proggies....
Lese ein file vom einem unix-server und möchte es lokal speichern.
Mein problem:
Das wird per Buffered Reader (read.Line()) Zeilen-weise gelesen und geschrieben)
Für den Zeilenumbruch setze ich nach jederm in.readLine() ein + "\n" dran, kein problem.
ABER:
Jedes File das ich vom Server bekomme) endet immer mit "\n\.\n"
Sprich:
---leere zeile---
.
---leere zeile----
Dies möchte ich beim downgeloadeten file nicht dabei haben! :!:
Ich habe etwas von "escapen" gehört, konkret kann ich es leider nicht anwenden,
ich müsste also irgendwie abfragen ob ich einer zeile das "\n.\n" enthalten ist (das wäre dann die letzte)
wie mache ich das aber, denn bei readLine() wird es ja ausser acht gelassen!
???:L
Hier ein bisschen code:
Code:
mySocket = new Socket(host, port);
out = new PrintWriter(mySocket.getOutputStream(), true);//in den Socket schreiben
in = new BufferedReader(new InputStreamReader(mySocket.getInputStream()));//aus dem Socket lesen
...
String datei;
datei = "download";
ausgabedatei = new File(datei +".txt");
fw = new FileWriter(ausgabedatei);
bw = new BufferedWriter(fw);
out.println("GET\nreadme.txt");
boolean endefile=false;
while(endefile==false){
if (in der zeile \n.\n vorkommt){
endefile = true;
else{
bw.write(in.readLine()+"/n");
}
}
hoffe ich habe das verständlich erläutert und hjemand ist so nett und kann mir helfen!
:bahnhof:
Danke melbe