Ich habe bei folgenden den Error:
Mein Client (senden der Datei):
Server(empfängt die Datei):
(das Programm ist um eine zip Datei zu verschicken)
Also woher kommt der Error?
Java:
java.net.SocketException: Connection reset by peer: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at java.nio.file.Files.copy(Unknown Source)
at java.nio.file.Files.copy(Unknown Source)
at x46.Server.Server_in.run(Server_in.java:59)
at java.lang.Thread.run(Unknown Source)
Java:
Socket client = new Socket("localhost", 16102);
// strems
// out
OutputStream outStream = client.getOutputStream();
PrintWriter out = new PrintWriter(outStream);
// in
InputStream inStream = client.getInputStream();
BufferedReader in = new BufferedReader(new InputStreamReader(inStream));
// -------------------------------------------------------
File file = new File("send.zip");
// init array with file length
byte[] bytesArray = new byte[(int) file.length()];
FileInputStream fis = new FileInputStream(file);
fis.read(bytesArray); //read file into bytes[]
fis.close();
outStream.write(bytesArray);
outStream.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Server(empfängt die Datei):
Java:
try {
ExecutorService executor = Executors.newFixedThreadPool(2);
// server starten
ServerSocket server01 = new ServerSocket(16102);
System.out.println("Warte auf clients auf dem Port " + server01.getLocalPort());
// --------------------------------------------------------------
while (true) {
// connection aktiviren
Socket connection = server01.accept();
System.out.println("Client verbingung unter: " + connection.getRemoteSocketAddress());
// -------------------------------------------------------------------
// strems
// out
OutputStream outStream = connection.getOutputStream();
PrintWriter out = new PrintWriter(outStream);
ObjectOutputStream oos = new ObjectOutputStream(outStream);
// in
InputStream inStream = connection.getInputStream();
BufferedReader in = new BufferedReader(new InputStreamReader(inStream));
// ------------------------------------------------------------
// Path path = Paths.get("test.zip");
File f = new File("test.zip");
Files.copy(f.toPath(), outStream);
}
} catch (IOException e) {
e.printStackTrace();
}
Also woher kommt der Error?
Zuletzt bearbeitet: