Hallo Leute!
Ich habe zwei kleine Programme programmiert mit denen ich Dateien übertragen kann. Das funktioniert, solange ich die Dateien von Mac nach Mac übertrage, aber nicht, wenn ich von Windows nach Mac übertrage.
Folgendes vorgehen, um eine Datei zu senden:
1. FileReader
2. Socket mit OutputStream
3. Datei umgewandelt. Dass heisst, jedes Byte wird eingelesen und davon der INT Wert genommen und übertragen.Die einzelnen INT Werte werden als String übertragen und mit "/" werden die einzelnen INTs abgetrennt.
Der Server:
4. Der Server liest die INT's ein und wandelt den INT Wert wieder in ein char um und schreibt den mit einem BufferedWriter(FileWriter) in eine Datei.
5. Ist die Übertragung beendet wird die Verbindung beendet.
Diese Umwandlung mache ich, weil wenn ich die einzelnen Byte's übertrage fehler auftraten (auch zwischen MAC und MAC).
Ich arbeite mit TCP.
Nun ist meine Frage, warum die Datei falsch übertragen wird und die meisten Zeichen (bzw. Bytes) falsch ankommen.
Ich habe zwei kleine Programme programmiert mit denen ich Dateien übertragen kann. Das funktioniert, solange ich die Dateien von Mac nach Mac übertrage, aber nicht, wenn ich von Windows nach Mac übertrage.
Folgendes vorgehen, um eine Datei zu senden:
1. FileReader
2. Socket mit OutputStream
3. Datei umgewandelt. Dass heisst, jedes Byte wird eingelesen und davon der INT Wert genommen und übertragen.Die einzelnen INT Werte werden als String übertragen und mit "/" werden die einzelnen INTs abgetrennt.
Der Server:
4. Der Server liest die INT's ein und wandelt den INT Wert wieder in ein char um und schreibt den mit einem BufferedWriter(FileWriter) in eine Datei.
5. Ist die Übertragung beendet wird die Verbindung beendet.
Diese Umwandlung mache ich, weil wenn ich die einzelnen Byte's übertrage fehler auftraten (auch zwischen MAC und MAC).
Ich arbeite mit TCP.
Nun ist meine Frage, warum die Datei falsch übertragen wird und die meisten Zeichen (bzw. Bytes) falsch ankommen.