网络编程_TCP上传文本文件并给出反馈
来源:互联网 发布:淘宝城 上海 编辑:程序博客网 时间:2024/05/22 04:56
package cn.itcast_12;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.net.ServerSocket;import java.net.Socket;/* * 服务器输出文本文件 */public class UploadServer {public static void main(String[] args) throws IOException {// 创建服务器Socket对象ServerSocket ss = new ServerSocket(11111);// 监听客户端链接Socket s = ss.accept();// 封装通道内流BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));// 封装文本文件BufferedWriter bw = new BufferedWriter(new FileWriter("Copy.java"));String line = null;while ((line = br.readLine()) != null) {// if ("over".equals(line)) {// break;// }bw.write(line);bw.newLine();bw.flush();}// 给出反馈BufferedWriter bwServer = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));bwServer.write("文件上传成功");bwServer.newLine();bwServer.flush();// 释放资源bw.close();s.close();}}
package cn.itcast_12;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.net.Socket;/* * 按照我们正常的思路加入反馈信息,结果却没反应。为什么呢? * 读取文本文件是可以null作为结束信息的,但是呢,通道内是不能这样结束信息的。 * 把以,报务器根本就不知道你结束了。而你还想服务器给你馈。所以,就相互等待了。 * * 如何解决呢? * A:在多写一条数据,告诉服务器,读取到这条数据说明我就结束,你也结束吧。 * 这样做可以解决问题,但是不好 * B:Socket对象提供了一种解决方案 * public void shutdownOutput():禁用此套接字的输出流。 */public class UploadClient {public static void main(String[] args) throws IOException {// 创建客户端Socket对象Socket s = new Socket("192.168.31.165", 11111);// 封装文本文件BufferedReader br = new BufferedReader(new FileReader("InetAddressDemo.java"));// 封装通道内流BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));String line = null;while ((line = br.readLine()) != null) {bw.write(line);bw.newLine();bw.flush();}// 自定义结束标记// bw.write("over");// bw.newLine();// bw.flush();// Socket提供了一个终止,它会通知服务器你别等了,我没有数据过来了s.shutdownOutput();// 接收反馈BufferedReader brClient = new BufferedReader(new InputStreamReader(s.getInputStream()));String client = brClient.readLine();System.out.println(client);// 释放资源br.close();s.close();}}
0 0
- 网络编程_TCP上传文本文件并给出反馈
- 网络编程_TCP协议上传图片并给出反馈
- 网络编程-上传文本并给出反馈
- 网络编程-上传图片并给出反馈
- 网络编程_TCP协议上传文本文件
- TCP数据传输(五):上传文本文件并给出反馈
- 网络编程_TCP协议的文件上传
- TCP数据传输(六):上传图片并给出反馈
- JavaSE_网络编程_TCP
- 网络编程_TCP协议
- 网络编程-客户端发数据_服务器给出反馈
- 网络编程学习_TCP协议
- Java_乔晓松_TCP客户端想服务器端上传照片和文本文件
- 【24】网络编程2_TCP并发上传图片和登录,Tomcat服务器,自定义IE,域名解析
- java网络编程_TCP编程基础_1
- 网络编程_TCP编程(一)
- 黑马程序员-->08_TCP、UDP网络编程
- 网络编程_TCP协议发送数据
- HandlerThread 的使用及其源码完全解析
- Windows下phpmyadmin登陆mysql报错
- 渐进增强和优雅降级之间的区别在哪里?
- Geode 发布应用JARS到Geode members
- 登录按钮padding无效
- 网络编程_TCP上传文本文件并给出反馈
- CollapsingToolbarLayout的使用
- linux 进程监控命令1——top
- 如何判断一个整数是不是奇数----最佳方式
- 详解struts-2.3.32的配置(巨坑)
- 10单元练习
- python自动化测试
- Redis常用命令
- db_install.rsp配置描述