2
Server.java
異常線程 「main」 java.net.SocketException異常:連接復位
public class Server {
public static BufferedReader inFromClient = null;
public static DataOutputStream outToClient = null;
public static Socket connectionSocket = null;
static ServerSocket welcomeSocket = null;
static String path = null;
public static void main(String[] args) throws IOException {
welcomeSocket = new ServerSocket(1001);
FileInputStream fin = null;
FileOutputStream fout = null;
while (true) {
connectionSocket = welcomeSocket.accept();
inFromClient = new BufferedReader(new InputStreamReader(
connectionSocket.getInputStream()));
outToClient = new DataOutputStream(
connectionSocket.getOutputStream());
path = inFromClient.readLine();
if (path != null) {
String fileName = new File(path).getName();
File file = new File(path);
File file2 = new File(fileName);
fin = new FileInputStream(file);
fout = new FileOutputStream(file2);
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = fin.read(buffer)) > 0) {
fout.write(buffer, 0, bytesRead);
}
fin.close();
fout.close();
}
}
}
}
我得到這個錯誤
Exception in thread "main" java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at sun.nio.cs.StreamDecoder.readBytes(Unknown Source)
at sun.nio.cs.StreamDecoder.implRead(Unknown Source)
at sun.nio.cs.StreamDecoder.read(Unknown Source)
at java.io.InputStreamReader.read(Unknown Source)
at java.io.BufferedReader.fill(Unknown Source)
at java.io.BufferedReader.readLine(Unknown Source)
at java.io.BufferedReader.readLine(Unknown Source)
at Server.main(Server.java:37)
這裏是什麼,我要怎樣做。
運行Server.java後運行Client.java。我試着按選擇按鈕,但沒有選擇任何文件,然後關閉文件選擇器。
在我的理解是,這條線
path = inFromClient.readLine();
當它試圖READLINE,但沒有找到任何這就是爲什麼它說未知源,但我要如何解決這個問題?
在我Client.java
我試圖close()
插座,但它不是關閉在所有....
UPDATE我已經將嘗試在錯誤發生server.java &抓固定的錯誤,並解決了這個問題!
'try/catch'不能解決任何問題。它改變了行爲。 – EJP 2017-08-04 10:20:57