Hallo.
Ich möchte Dateien beliebigen Formats, also ASCII oder Binär, einlesen, dann per TCP versenden und auf einem Server wieder abspeichern. Auf der Client-seite befindet sich ein von mir geschriebenes Programm, dass über Shell aufgerufen wird und dann Argumente übergeben kriegt, z.B. den Dateinamen der einzulesenden Datei. Das Programm soll dann zu einem, auch von mir geschriebenen Server eine Verbindung herstellen und die Datei übertragen. Der Server soll diese dann wieder abspeichern. Umgekehrt soll das auch funktionieren: Der Client sendet eine Anfrage zum erhalten einer Datei und der Server schickt sie ihm.
Der Netzwerkcode ist kein Problem, aber bei der Dateiübertragung bin ich mir nicht sicher, welche Stream-, Reader- und Writerklassen ich verwenden soll. Es muss ein CheckedInputStream bzw. ein CheckedOutputStream verwendet werden, da ich eine Adler32 Prüfsumme bilden will, um die Vollständigkeit der Datei zu überprüfen. Ich weiß weder, ob die Dateien ANSII oder Binär sind, noch wie groß die Datei ist (was sich ja aber durch ein File-Objekt herausfinden ließe).
Im Prinzip ist das ganze ähnlich wie eine FTP-Übertragung.
Kanm mir jemand helfen? Am besten mir die Klassen nennen, die am besten dafür geeignet sind oder gleich Beispiel Quellcode.
Vielen Dank.
Gruß,
Jan.
Ich möchte Dateien beliebigen Formats, also ASCII oder Binär, einlesen, dann per TCP versenden und auf einem Server wieder abspeichern. Auf der Client-seite befindet sich ein von mir geschriebenes Programm, dass über Shell aufgerufen wird und dann Argumente übergeben kriegt, z.B. den Dateinamen der einzulesenden Datei. Das Programm soll dann zu einem, auch von mir geschriebenen Server eine Verbindung herstellen und die Datei übertragen. Der Server soll diese dann wieder abspeichern. Umgekehrt soll das auch funktionieren: Der Client sendet eine Anfrage zum erhalten einer Datei und der Server schickt sie ihm.
Der Netzwerkcode ist kein Problem, aber bei der Dateiübertragung bin ich mir nicht sicher, welche Stream-, Reader- und Writerklassen ich verwenden soll. Es muss ein CheckedInputStream bzw. ein CheckedOutputStream verwendet werden, da ich eine Adler32 Prüfsumme bilden will, um die Vollständigkeit der Datei zu überprüfen. Ich weiß weder, ob die Dateien ANSII oder Binär sind, noch wie groß die Datei ist (was sich ja aber durch ein File-Objekt herausfinden ließe).
Im Prinzip ist das ganze ähnlich wie eine FTP-Übertragung.
Kanm mir jemand helfen? Am besten mir die Klassen nennen, die am besten dafür geeignet sind oder gleich Beispiel Quellcode.
Vielen Dank.
Gruß,
Jan.