Input/Output Socket I/O - outputStream.write(-1)

Blackhole16

Bekanntes Mitglied
Vorwort:
Ich weiß nicht, ob meine Überschrift vielsagend ist, ich weiß aber auch nicht, wie ich das Problem zusammenfassen kann.
Auch wenn ich von Sockets schreibe, hat es wohl eher etwas mit Grundlegendem zu tun, weshalb ich hier im Anfängerforum bin.
Ich habe schon im Internet gesucht, aber wahrscheinlich mit falschen Stichwörtern, auf jeden Fall habe ich noch nichts Hilfreiches gefunden...

Programm:
Das Programm, das ich schreibe ist dafür da, um auf 2 PCs jeweils einen Ordner zu vergleichen, sodass am Ende in beiden Ordern jeweils die neuesten Dateien stehen. Dies passiert über einen ServerSocket auf dem einen und einem Socket auf dem anderen PC.

Problem:
Ich möchte testweise nur ein Bild übertragen. Dieses lese ich mit einem BufferedInputStream ein und übertrage es über den OutputStream des Sockets. Auf der anderen Seite lese ich es nun mit dem InputStream des Sockets ein und schreibe es mit einem BufferedOutputStream in die Datei auf dem anderen Server.
Doch wie kann ich das Signal übertragen, dass die Datei jetzt fertig übertragen wurde und es auf zur nächsten geht? Bei normalen Textdateien habe ich einfach als Endsignal das byte 0 übertragen, welches in den Textdateien ja normalerweise nicht benutzt wird. (Komischerweise kam beim anderen PC 255 anstatt der 0 o_O, aber das ist ja nicht mein Problem ;) )
Ich denke, dass es am einfachsten wäre, wenn ich die -1 übertragen könnte, als EOS signal und dann weiter zur nächsten Datei gehe. Doch wenn ich einfach -1 schreibe, kommt bei manchen Streams das bekannte ? aber als (int)63 an, bei anderes (z.B. dem normalen OS) wird es einfach ignoriert, da es nicht zwischen 0 und 128 liegt und auch nicht das normale EOS vorhanden ist.
Über diesen OS schreibe ich danach aber direkt weiter, weswegen ich ihn nicht schließen möchte. Als ich probiert habe diesen zu schließen, wurde iwie gleich der socket geclosed... Die erste Datei wurde Fehlerfrei übertragen (das Bild) aber die Verbindung war halt weg.

Frage:
Kann man auch ohne einen OS zu closen ein EOS-Signal senden?
 
G

Gast2

Gast
Du könntest entweder mit nem Timeout arbeiten (wenn x ms keine neuen Daten kommen nimmst du das Ende der Übertragung an), oder du schickst vorher die Anzahl der Bytes die gesendet vorraus.
 

Blackhole16

Bekanntes Mitglied
OMG das war einfach mal wieder zu einfach ;D ;P

Ja haste ja vollkommen Recht mit der 2. variante. Eingefügt, probiert und es läuft Einwandfrei. DANKE

mfg
BH16
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Socket OutputStream Java Basics - Anfänger-Themen 17
izoards Socket Kommunikation Java Basics - Anfänger-Themen 16
Nina Pohl Ein Vorgang bezog sich auf ein Objekt, das kein Socket ist Java Basics - Anfänger-Themen 6
G Socket Verbindung aufbauen Java Basics - Anfänger-Themen 11
S Bilder über Socket Senden Java Basics - Anfänger-Themen 1
S Asynchrone Socket-Abfragen Java Basics - Anfänger-Themen 5
Meeresgott OOP Socket Verbindung richtig Kapseln Java Basics - Anfänger-Themen 0
O Socket by reference übergeben Java Basics - Anfänger-Themen 0
J Socket schließen - Ist eine SocketException unumgänglich? Java Basics - Anfänger-Themen 4
D Socket ---> Server Socket worauf muss ich achten? Java Basics - Anfänger-Themen 2
N Socket-Programmierung Java Basics - Anfänger-Themen 4
M wait/notify bei Socket Java Basics - Anfänger-Themen 4
B Socket Kommunikation in beide Richtungen Java Basics - Anfänger-Themen 12
B Socket, args Java Basics - Anfänger-Themen 22
L Socket in JTextArea Java Basics - Anfänger-Themen 9
T Input/Output Zwei InputStreams von einem Socket Java Basics - Anfänger-Themen 2
B Socket Problem Java Basics - Anfänger-Themen 3
T socket.close aber verbindung besteht noch Java Basics - Anfänger-Themen 4
F Buffered Image über Socket versenden Java Basics - Anfänger-Themen 6
E Socket InputStream "terminiert" nicht Java Basics - Anfänger-Themen 4
B Threads Interrupt während Socket.read()? Java Basics - Anfänger-Themen 3
M Versand von Nachrichten via Socket (Delay) Java Basics - Anfänger-Themen 21
F socket-problem Java Basics - Anfänger-Themen 6
E Input/Output Socket bekommt keine Verbindung bei funktionierendem Fremdziel Java Basics - Anfänger-Themen 2
E Socket (Client) dauerhaft aktiv? Java Basics - Anfänger-Themen 9
D Java - Socket - Datenübertragung Java Basics - Anfänger-Themen 18
E Input/Output einfachen Socket für XML-Anfragen bauen Java Basics - Anfänger-Themen 13
R Cannot find a free socket for the debugger Java Basics - Anfänger-Themen 6
F Socket Kommunikation Java Basics - Anfänger-Themen 4
M "Connection reset" gbxRemote Socket Java Basics - Anfänger-Themen 9
N Files mit Byte an Socket versenden Java Basics - Anfänger-Themen 2
L FTP per Socket Java Basics - Anfänger-Themen 2
M Audio Stream läuft auf :connection abort: socket write error Java Basics - Anfänger-Themen 2
J Socket - BufferedReader lese Problem Java Basics - Anfänger-Themen 2
M Socket Server Java Basics - Anfänger-Themen 9
N Socket Problem? Java Basics - Anfänger-Themen 9
G Socket erstellen dauert sehr lange. Java Basics - Anfänger-Themen 4
H Java Socket Java Basics - Anfänger-Themen 14
A XML Daten über Socket Java Basics - Anfänger-Themen 3
I Allgemeine fragen zu Socket server Java Basics - Anfänger-Themen 6
C Socket Programmierung Java Java Basics - Anfänger-Themen 4
F Socket Instanz auf Klasse welche von Socket erbt zuweisen Java Basics - Anfänger-Themen 3
ven000m Wieso antwortet mein Server nicht mehr (Socket Anwendung) Java Basics - Anfänger-Themen 2
J Daten von einem (char*)Socket einlesen. Java Basics - Anfänger-Themen 3
S Java Socket Java Basics - Anfänger-Themen 3
K Frage zu SdtOut streams bzw. Socket Programmierung Java Basics - Anfänger-Themen 3
M HTTP-Anfragen und Socket Java Basics - Anfänger-Themen 2
A von Socket-Stream lesen Java Basics - Anfänger-Themen 4
M Ändern einer Socket-Eigenscheft aus einem modalen Dialog? Java Basics - Anfänger-Themen 6
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
berserkerdq2 Wo ist der SInn, dass man den Stream, den ich zum Schreiben nutze, outputstream nenne? Java Basics - Anfänger-Themen 5
berserkerdq2 inputstream und bufferedwirter /outputstream und bufferedwriter Java Basics - Anfänger-Themen 9
J Nachricht an OutputStream Java Basics - Anfänger-Themen 2
I Probleme mit OutputStream - Datei lässt sich nicht öffnen Java Basics - Anfänger-Themen 4
B InputStream / OutputStream / PipedOutputStream und managedExecutorService Java Basics - Anfänger-Themen 3
B java.io.OutputStream zu java.io.InputStream konvertieren Java Basics - Anfänger-Themen 18
B Input/Output OutputStream im Paramaeter Java Basics - Anfänger-Themen 2
B OutputStream in FileInputStream? Java Basics - Anfänger-Themen 9
T ObjectInput/OutputStream Fragen zur Funktionsweise Java Basics - Anfänger-Themen 3
B Konvertieren: Outputstream zu Inputstream Java Basics - Anfänger-Themen 13
M ArrayList durch OutputStream in Datei Java Basics - Anfänger-Themen 9
S Objekte mit Outputstream in Safefile Java Basics - Anfänger-Themen 4
B Input/Output InputStream (JSch) in OutputStream (Blob) überführen Java Basics - Anfänger-Themen 8
B [Erledigt] Fehlverhalten mit File, FileInput/OutputStream und FileChannel Java Basics - Anfänger-Themen 4
Forlan OutputStream Initialisieren Java Basics - Anfänger-Themen 4
F DataIn/Outputstream Java Basics - Anfänger-Themen 4
lars-sh HttpURLConnection und OutputStream Java Basics - Anfänger-Themen 4
A String in OutputStream schreiben Java Basics - Anfänger-Themen 5
D An Datei "anhängen" mit OutputStream Java Basics - Anfänger-Themen 9
S Outputstream & String? Java Basics - Anfänger-Themen 4
reibi OutputStream nach ByteOutputStream konvertieren Java Basics - Anfänger-Themen 21
P OutputStream Java Basics - Anfänger-Themen 7
H OutputStream Java Basics - Anfänger-Themen 8
M ProcessBuilder und OutputStream Java Basics - Anfänger-Themen 2
M OutputStream funktioniert nur in Endlosschleife ? Java Basics - Anfänger-Themen 4
R OutputStream direkt in StringBuffer schreiben lassen Java Basics - Anfänger-Themen 2
G ClassLoader und OutPutStream Java Basics - Anfänger-Themen 3
G Standard OutputStream out wiederherstellen Java Basics - Anfänger-Themen 5
A Instance methods should not write to "static" fields Java Basics - Anfänger-Themen 4
N Threads Read-Modify-Write Problem bei Multithreading (philosopher dining problem) Java Basics - Anfänger-Themen 5
S write(), weshalb verschiedene Ausgaben? Java Basics - Anfänger-Themen 4
K exec.StdIn.Write Java Basics - Anfänger-Themen 7
X write() und Zufallszahlen Java Basics - Anfänger-Themen 2
K Input/Output read/write Java Basics - Anfänger-Themen 15
J FileOutputStream write Java Basics - Anfänger-Themen 19
Corben Input/Output FileOutputStream - neue Zeile mit write(10) Java Basics - Anfänger-Themen 6
F FileOutputStream.write Java Basics - Anfänger-Themen 2
M Unterschied append / write aus der Klasse Writer Java Basics - Anfänger-Themen 2
W file read write crash Java Basics - Anfänger-Themen 2
M Pfad angabe bei getRescource und ImageIO.write Java Basics - Anfänger-Themen 4
hdi Datentypen FileOutputStream#write(int) mit ints? Java Basics - Anfänger-Themen 5
G ImageIO.write() Java Basics - Anfänger-Themen 2
M Streams, read and write Java Basics - Anfänger-Themen 2
I ImageIO.write(bild, "was gibts da alles", pfad); Java Basics - Anfänger-Themen 6
D FileWriter write? Zeilenumbruch ? Java Basics - Anfänger-Themen 4
S Technik hinter der write Methode Java Basics - Anfänger-Themen 5
C write Java Basics - Anfänger-Themen 3
S Inhalt aus Array auf JSP anzeigen mit bean:write Java Basics - Anfänger-Themen 2
F javax.imageio.ImageIO write methode Java Basics - Anfänger-Themen 11

Ähnliche Java Themen

Neue Themen


Oben