ここにクライアントとサーバーがあります。クライアントは最初にファイルを送信する必要があります。サーバーがそれを受信するとき、オブジェクトを送信する必要があります。ファイルの送受信はうまく機能しますが、クライアントは結果オブジェクトを受信しませんでした
public class Server_file {
public static void main(String[] args) throws IOException {
ServerSocket server_socket = new ServerSocket(2233);
Socket socket = server_socket.accept();
FileOutputStream fos = new FileOutputStream(
"C:/Users/Asmaa/Desktop/test51.txt");
BufferedOutputStream out = new BufferedOutputStream(fos);
byte[] buffer = new byte[1024];
int count;
OutputStream os = socket.getOutputStream();
InputStream in = socket.getInputStream();
while((count=in.read(buffer)) >=0 ){
fos.write(buffer, 0, count);
}
fos.close();
System.out.println("test");
Resultat res = new Resultat(14);
ObjectOutputStream oos = new ObjectOutputStream(os);
oos.writeObject(res);
oos.close();
socket.close();
}
}
そしてここでクライアント:
public class Client_file {
public static void main(String[] argv) throws Exception {
Socket socket = new Socket("127.0.0.1", 2233);
int count;
byte[] buffer = new byte[1024];
File myFile = new File("C:/Users/Asmaa/Desktop/s.txt");
OutputStream out = socket.getOutputStream();
BufferedInputStream in = new BufferedInputStream(new FileInputStream(
myFile));
while ((count = in.read(buffer)) >= 0) {
out.write(buffer, 0, count);
out.flush();
}
System.out.println("hi");
InputStream is = socket.getInputStream();
ObjectInputStream ois = new ObjectInputStream(is);
Resultat to = (Resultat) ois.readObject();
System.out.println("test");
System.out.println(to.getA());
out.close();
socket.close();
}
}