java如何使用Socket实现文件上传功能
发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,这篇文章主要介绍了java如何使用Socket实现文件上传功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下文件上传的步骤
千家信息网最后更新 2024年11月24日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安全错误
数据库的锁怎样保障安全
福州马尾网络安全公司
服务器 帐号管理软件
个人数据库的英文
数据库并发设计
90后创建软件开发公司
同上一堂课网络安全线上讲座图片
启明星辰网络安全公司
手游渠道服务器
数据库上班好找工作吗
方舟服务器最多可以开多少人
数据库查询小于等于0
海康服务器和存储的连接方法
labview软件开发兼职
onethink链接数据库
昌吉行业专业软件开发
卷积神经网络检测 数据库
上海软件开发者小程序
数据库技术的发展和展望
军队网络安全工作方针
云服务器不可信 安全搜索
软件开发也是程序员吗
软件开发有哪些好的选题
美团外卖数据库叫什么
数据库技术及应用课程
爱美剧服务器异常
企业无线网络技术wifi6
mcu软件开发
mysql数据库删除
郑州北斗网络技术服务中心
访问数据库冲突