TCP通信程序练习(上传文件服务器给出反馈)
package NetworkProgramming.TCP.SocketDemo05;
import java.io.*;
import java.net.Socket;
/**
* FileName: ClientDemo
* Author: lps
* Date: 2022/4/2 14:54
* Sign:刘品水 Q:1944900433
*/
public class ClientDemo {
public static void main(String[] args) throws IOException {
Socket s = new Socket("192.168.10.102",1944);
BufferedReader br = new BufferedReader(new FileReader("F:\\IdeaProjects\\bos.java"));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
String line;
while ((line= br.readLine())!=null){
bw.write(line);
bw.newLine();
bw.flush();
}
//自定义结束标记
// bw.write("886");
// bw.newLine();
// bw.flush();
////void shutdownInput()
// //将此套接字的输入流放在“流结束”中。
// //void shutdownOutput()
// //禁用此套接字的输出流。
s.shutdownOutput();
BufferedReader brClient = new BufferedReader(new InputStreamReader(s.getInputStream()));
String data= brClient.readLine();
System.out.println("服务器端的反馈为:"+data);
br.close();
s.close();
bw.close();
}
}
package NetworkProgramming.TCP.SocketDemo05;
import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
/**
* FileName: ServerDemo
* Author: lps
* Date: 2022/4/2 14:54
* Sign:刘品水 Q:1944900433
* @author lps
*/
public class ServerDemo {
public static void main(String[] args) throws IOException {
ServerSocket ss = new ServerSocket(1944);
Socket s = ss.accept();
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
BufferedWriter bw = new BufferedWriter(new FileWriter("F:\\IdeaProjects\\copy.java"));
String line;
while ((line= br.readLine())!=null){
// if ("886".equals(line)){
// break;
// }
bw.write(line);
bw.newLine();
bw.flush();
System.out.println("接收到的数据为:"+line);
}
//void shutdownInput()
//将此套接字的输入流放在“流结束”中。
//void shutdownOutput()
//禁用此套接字的输出流。
BufferedWriter bwServer = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
bwServer.write("文件上传完成");
bwServer.newLine();
bwServer.flush();
s.close();
bw.close();
br.close();
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix