客户端

package internet;import java.io.*;
import java.net.InetAddress;
import java.net.Socket;/*** Create with IntelliJ IDAE** @Author: JINLEI* @Description:* @Date: 2022/2/23* @Time: 19:34**/
//文件上传 客户端
public class TcpClientDemo2 {public static void main(String[] args) throws IOException {//1、创建一个socket连接Socket socket = new Socket(InetAddress.getByName("127.0.0.1"), 9000);//创建一个输出流OutputStream os = socket.getOutputStream();//3、读取文件FileInputStream fis = new FileInputStream(new File("1.jpg"));//4、写出文件byte[] buffer = new byte[1024];int len;while ((len = fis.read(buffer)) != -1){os.write(buffer,0,len);}//通知服务器,我已经结束了socket.shutdownOutput();//我已经输出完了//确定服务器接收完毕,才能断开连接InputStream inputStream = socket.getInputStream();ByteArrayOutputStream baos = new ByteArrayOutputStream();byte[] buffer2 = new byte[1024];int len2;while ((len2 = inputStream.read(buffer2)) != -1){baos.write(buffer2,0,len2);}System.out.println(baos.toString());//5、关闭资源baos.close();inputStream.close();fis.close();os.close();socket.close();}
}

服务端

package internet;import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;/*** Create with IntelliJ IDAE** @Author: JINLEI* @Description:* @Date: 2022/2/23* @Time: 19:34**/
//文件上传 服务端
public class TcpServerDemo2 {public static void main(String[] args) throws IOException {//1、创建服务ServerSocket serverSocket = new ServerSocket(9000);//2、监听客户端连接Socket socket = serverSocket.accept();//3、获取输入流InputStream is = socket.getInputStream();//4、文件输出FileOutputStream fos = new FileOutputStream(new File("receive.jpg"));byte[] buffer = new byte[1024];int len;while ((len = is.read(buffer)) != -1) {fos.write(buffer,0,len);}//通知客户端我接收完毕OutputStream os = socket.getOutputStream();os.write("我接收完毕,你可以断开了".getBytes());//5、关闭资源fos.close();is.close();socket.close();serverSocket.close();}
}

网络编程:TCP实现文件上传相关推荐

  1. (网络编程)TCP实现文件上传

    文章目录 TCP实现文件上传 客户端代码实现 服务器代码实现 TCP实现文件上传 演示TCP如何实现从客户端上传文件到服务器,可以用两台电脑连同一个局域网,一个作为客户端一个作为服务器实现,两台只要能 ...

  2. .net core 文件流保存图片_Java--利用TCP实现文件上传

    Java--利用TCP实现文件上传 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 图解 步骤 [客户端]输入流,从硬盘读取文件 ...

  3. FTP编程实验——实现文件上传下载(基于Python3.7和PyQt5)

    目录 FTP编程实现文件上传下载(基于Python3.7和PyQt5) 一.实验目的 二.实验内容 三.实验步骤 (一)服务器端 (二)客户端 [1] 界面设计 [2] 生成布局代码 [3] 功能实现 ...

  4. 黑马程序员_java高级篇网络编程TCP实战Day8(上)

    ---------------------ASP.Net+Android+IOS开发.Net培训.期待与您交流! ----------- 黑马程序员_java高级篇网络编程TCP实战Day8(上) ( ...

  5. HTTP协议编程,实现文件上传,Android客户端代码

    第一步:编写FormFile实体类,用于封转上传文件的属性 import java.io.File; import java.io.FileInputStream; import java.io.Fi ...

  6. C#编程, FTP文件上传、下载、重命名公共类

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net ...

  7. TCP通信文件上传原理

  8. Go语言练习:网络编程实例——简易图片上传网站

    1.代码结构 $ tree . ├── photoweb.go ├── public │ ├── css │ ├── images │ └── js ├── uploads └── views├── ...

  9. kuangshenshuo-网络编程-TCP实现聊天和文件上传

    网络编程 -> TCP实现聊天和文件上传 1. TCP实现聊天 1.1 客户端 ① 连接服务器 Socket ② 发送消息 import java.io.IOException; import ...

最新文章

  1. 国外物联网平台初探(四):Ayla Networks
  2. go语言的goconvey
  3. bzoj 4814: [Cqoi2017]小Q的草稿【计算几何】
  4. Codeforces Round #260 (Div. 1) A - Boredom DP
  5. 虚拟地址到物理地址的转换步骤【转】
  6. MySQL 索引必须了解的几个重要问题
  7. 知识点 组合数学 卡特兰数
  8. samba-设定文件共享
  9. 黑群晖 linux 修改参数,黑群晖 DS918+ 修改引导参数隐藏引导盘和数据盘
  10. 简单解决新浪博客“您短时间发表文章过多,请稍后再试”的问题
  11. jiangdongsheng
  12. canvas画布会黑屏吗_你真的会绷油画布吗?
  13. 【国产】TASKCTL批量作业调度统一图形监控运维平台
  14. addr2line来定位问题
  15. Yamaha Vocaloid 5.6.2 x64 WiN 歌声合成器
  16. TTL转HDMI 1.4,性能提升,pin to pin 芯片LT8618SXB
  17. 解决谷歌浏览器Chrome不能播放央视新闻视频的问题
  18. iOS模拟各种网络状态
  19. 应聘Java笔试时可能出现问题库及其答案(最全版)
  20. 不能装载文档控件。请在检查浏览器的选项中检查浏览器的安全设置_「初级会计报考指南」浏览器问题解决方案...

热门文章

  1. linux-用户管理190919
  2. linux-文件路径
  3. python-列表包字典-字典结构格式化-经验
  4. MHA使用非22端口的SSH配置
  5. ZooKeeper管理员指南
  6. 通过Docker或虚拟机快速搭建私有云平台--使用Nextcloud和ONLYOFFICE创建您的WebOffice云办公系统
  7. 更新mac系统中homebrew的源,更改为清华大学的源
  8. UiPath实践经验总结(二)
  9. 在玩客云上部署code-server
  10. 【Python】 注释