java如何使用Socket实现文件上传功能
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,这篇文章主要介绍了java如何使用Socket实现文件上传功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下文件上传的步骤
千家信息网最后更新 2025年01月20日java如何使用Socket实现文件上传功能
这篇文章主要介绍了java如何使用Socket实现文件上传功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
具体内容如下
文件上传的步骤:
服务器端步骤:
1、创建ServerSocket
2、调用accept获得客户端Socket
3、定义字节数组
4、创建文件输出流,获得客户端输入流
5、循环读取输入流的字节,写入到文件输出流
客户端步骤:
1、创建Socket
2、获得socket对象输出流
3、创建文件输入流
4、循环读取文件输入流字节,写入到输出流
代码实现:
服务器端:
public class FileServer { public static final int PORT = 8888; public static final String PATH = "D:\\upload\\"; public void start(){ System.out.println("start..."); try ( //创建服务器端对象 ServerSocket server = new ServerSocket(PORT);){ while (true){ Socket socket = server.accept(); try ( //创建文件输出流和网络输入流 DataInputStream in = new DataInputStream(socket.getInputStream()); //读取哭护短发来的文件名,创建文件输出流 FileOutputStream out = new FileOutputStream(PATH+in.readUTF())){ int len = 0; byte[] buffer = new byte[1024]; while ((len = in.read(buffer)) != -1){ out.write(buffer,0,len); } System.out.println("服务器保存完毕!"); } } } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) { new FileServer().start(); }}
客户端:
public class FileClient { /** * 发送文件 */ public void sendFile(String ip,int port,String path){ File file = new File(path); try ( //创建连接,创建文件输入流,网络输出流 Socket socket = new Socket(ip,port); InputStream in = new FileInputStream(path); DataOutputStream out = new DataOutputStream(socket.getOutputStream())){ //先发送文件给服务器 out.writeUTF(file.getName()); out.flush(); //读取本地文件,写入到网络输出流中 int len = 0; byte[] buffer = new byte[1024]; while ((len = in.read(buffer)) != -1){ out.write(buffer,0,len); } System.out.println("客户端发送完毕!"); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) { new FileClient().sendFile("192.168.31.226",8888,"C:\\Users\\admin\\Desktop\\C.txt"); }}
实现效果:
感谢你能够认真阅读完这篇文章,希望小编分享的"java如何使用Socket实现文件上传功能"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
文件
输出
输入
客户
客户端
服务器
服务
篇文章
字节
步骤
网络
功能
对象
循环
代码
价值
兴趣
内容
同时
效果
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
qq邮箱的服务器类型
有真的网络安全
淘宝买代理服务器
软件开发实习过程简介
电力企业网络安全研讨会
专业流媒体服务器
陈翔六点半一千万软件开发
英特尔十纳米服务器芯片
新闻媒体网络安全管理办法
互联网 科技服务平台
软件开发中需要说明的问题
黎明杀机默认是哪个服务器
成都互联网科技人才
服务器一直提示更新
怎么在网页中插入数据库
海康威视上网行为管理服务器
世界一流的网络安全大学
萍乡服务器回收公司
韩国服务器代购
ea和育碧服务器哪个好
手机显示请求连接服务器
数据库风云图片
软件开发的市场前景
马鞍山博雅软件开发有限公司
华为服务器如何连接wifi
灵动互联网科技有限公司
维护网络安全的警示意义有哪些
sqlite数据库升级
服务器托管违法谁负责
荟创互联网科技