使用java实现文件,文件上传成功但是为什么收不到服务器端的回送报文呢
客户端
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
public class Client {
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("C:\abc\a.jpg");//使用字节输入流读取本地文件
Socket socket = new Socket("127.0.0.1",6666);//创建socket对象
OutputStream os = socket.getOutputStream();//创建网络字节输出流
int len;
byte[]bytes=new byte[1024];
while ((len=fis.read(bytes))!=-1){
os.write(bytes,0,len);//将读取的本地文件发送到服务器端
}
InputStream is = socket.getInputStream();//创建网络字节输入流
int lens;
byte []byesss=new byte[1024];
while ((lens=is.read(byesss))!=-1){//读取服务器端回送报文
System.out.println(new String(bytes,0,lens));
}
fis.close();
socket.close();
}
}
服务器端
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Sever {
public static void main(String[] args) throws IOException {
FileOutputStream fos = new FileOutputStream("D:\abc\a.jpg");//使用字节输出流将客户端发送来的文件保存至硬盘
ServerSocket server = new ServerSocket(6666);//创建服务器端对象
Socket socket = server.accept();//获取和此服务器端进行通信的客户端
InputStream is = socket.getInputStream();//利用客户端创建网络字节输入流
int len;
byte[]bytess=new byte[1024];
while ((len=is.read(bytess))!=-1){//利用网络字节输入流读取客户端发来的文件
fos.write(bytess,0,len);
}
OutputStream os = socket.getOutputStream();//利用客户端创建网络字节输出流
os.write("确认收到".getBytes());//发送回送报文
fos.close();
socket.close();
server.close();
}
}
文件已经传输至D盘,但是为什么没有回送报文
怎么才能得到回送报文