java使用TCP,由客户端向服务端传输图片,(电脑与电脑)或(同一台电脑)
发布日期:2021-10-12 20:08:32
浏览次数:3
分类:技术文章
本文共 2285 字,大约阅读时间需要 7 分钟。
概述
1.完成图片的复制,与客户端向服务端传输文字相差不大。都是: 1.1基于TCP协议的服务器端 1.创建服务器套接字,绑定端口号(new ServerSocket(1008)) 2.侦听客户连接,返回socker(listener.accept()) 3.获输入、输出流 4.处理数据 5.关闭资源 1.2基于TCP协议的客户端 1.创建客户端套接字,指定服务器的地址和端口号 2.获输入、输出流 3.处理数据 4.关闭资源2.需要注意的是:1.首先启动服务端Server 的服务,然后启动客户端Client 2.由客户端FileInputStream 向电脑a读取图片,BufferedOutputStream 再向电脑a写入图片 3.由服务端BufferedInputStream 从电脑b读取图片,FileOutputStream 再向电脑b 写入图片
1.服务端代码
package d04_test;/* * zt * 2020/8/10 * 20:36 * */import java.io.BufferedInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;public class Server { public static void main(String[] args) throws IOException { //1.创建 ServerSocket listener = new ServerSocket(10086); //2.侦听 System.out.println("服务器已经启动"); Socket socket = listener.accept(); //3.获取数据 BufferedInputStream bis = new BufferedInputStream(socket.getInputStream()); //4.处理数据 FileOutputStream fos = new FileOutputStream("f:\\yyy.jpg"); byte[] buf = new byte[1024]; int len = 0; while((len = bis.read(buf))!=-1){ fos.write(buf, 0, len); } //5.关闭资源 fos.close(); bis.close(); socket.close(); listener.close(); System.out.println("复制完毕"); }}
2.客户端代码
package d04_test;/* * zt * 2020/8/10 * 20:37 * */import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.net.Socket;public class Client { public static void main(String[] args) throws Exception { //1.创建 Socket socket = new Socket("10.0.139.160",10086); //2.获取输入流输出流 BufferedOutputStream bos = new BufferedOutputStream(socket.getOutputStream()); //3.处理数据 FileInputStream fis = new FileInputStream("f:\\aaa.jpg"); byte[] buf = new byte[1024]; int len = 0; while ((len = fis.read(buf))!=-1){ bos.write(buf, 0, len); bos.flush(); } //4.关闭资源 bos.close(); fis.close(); socket.close(); System.out.println("发送完毕"); }}
3.运行结果
Server运行结果:
服务器已经启动复制完毕Process finished with exit code 0
Client运行结果:
发送完毕Process finished with exit code 0
转载地址:https://blog.csdn.net/qq_39773004/article/details/107922047 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2024年03月21日 14时53分41秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
当集合a为空集时a的取值范围_1.1.2 集合间的基本关系
2019-04-21
vue 可合并表格组件_Vue实战046:详解Mixins混入使用和注意事项
2019-04-21
python包怎么做双重差分did分析_多变量相关性分析(一个因变量与多个自变量)
2019-04-21
fi sap 凭证冲销 稅_SAP中的成本要素
2019-04-21
mysql幻读是什么意思_MySQL中的幻读,你真的理解吗?
2019-04-21
易语言执行mysql命令_易语言通过“打开”命令操作数据库
2019-04-21
mysql slave 1062_mysql主从同步slave错误1062
2019-04-21
2008日志清理 server sql_SQL Server 2008 清除日志
2019-04-21
mac mysql root 权限_Mac平台重新设置MySQL的root密码
2019-04-21
mysql新增一列_MySQL-ProxySQL中间件
2019-04-21
mysql 30入门_30分钟带你快速入门MySQL教程
2019-04-21
mysql 翻页 存储过程_MySQl通用翻页(存储过程)
2019-04-21
mysql 自带压测工具_centos7中mysql自带压测工具mysqlslap使用
2019-04-21
python中pca算法_使用python的numpy库实现PCA算法
2019-04-21
statelesswidget 初始化执行方法_Spring的初始化回调你真的搞懂了吗?
2019-04-21