05_tcp从客户端发送文件到服务端(图片)
2021/7/18 23:12:26
本文主要是介绍05_tcp从客户端发送文件到服务端(图片),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
package com.baidu.tcp; import java.io.*; import java.net.ServerSocket; import java.net.Socket; /** * 服务器端 */ public class ServerDemo1 { public static void main(String[] args) { FileOutputStream fos=null; OutputStream os=null; //创建服务器端套接字 try { ServerSocket ss=new ServerSocket(9999); //监听客户端 Socket socket=ss.accept(); //获得客户端通道输入流 InputStream is=socket.getInputStream(); //创建字节输出流关联文件存储地 fos=new FileOutputStream("h:\\copy.mp4"); //读写存入 byte[] buf=new byte[1024*8]; int len=0; while((len=is.read(buf))!=-1){ fos.write(buf); fos.flush(); } //给客户端以反馈信息 os=socket.getOutputStream(); os.write("文件上传成功!".getBytes()); } catch (Exception e) { e.printStackTrace(); }finally{ try { //关闭资源 os.close(); fos.close(); } catch (IOException e1) { e1.printStackTrace(); } } } } //======================================================= package com.baidu.tcp; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; /** * 客户端 */ public class ClientDemo1 { public static void main(String[] args) { //1.获取客户端套接字 Socket socket=null; try { socket=new Socket("localhost",9999); //获得通道输出流 OutputStream os=socket.getOutputStream(); //创建客户端输入流关联上传文件 FileInputStream fis=new FileInputStream("E:\\个人作品\\Lose You.mp4"); byte[] buf=new byte[1024*8]; int len=0; while((len=fis.read(buf))!=-1){ os.write(buf,0,len); os.flush(); } //告知客户端文件上传完毕 socket.shutdownOutput();; //获得服务器端的反馈信息 InputStream is=socket.getInputStream(); byte[] buf1=new byte[1024]; int len1=0; while((len1=is.read(buf1))!=-1){ System.out.println(new String(buf1,0,len1)); } is.close(); } catch (Exception e) { e.printStackTrace(); }finally{ try { socket.close(); } catch (IOException e) { e.printStackTrace(); } } } }
这篇关于05_tcp从客户端发送文件到服务端(图片)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-20获取apk的md5值有哪些方法?-icode9专业技术文章分享
- 2024-11-20xml报文没有传 IdentCode ,为什么正常解析没报错呢?-icode9专业技术文章分享
- 2024-11-20如何知道代码有没有进行 Schema 验证?-icode9专业技术文章分享
- 2024-11-20Mycat教程:新手快速入门指南
- 2024-11-20WebSocket入门:轻松掌握WebSocket基础
- 2024-11-19WebSocket入门指南:轻松搭建实时通信应用
- 2024-11-19Nacos安装资料详解:新手入门教程
- 2024-11-19Nacos安装资料:新手入门教程
- 2024-11-19升级 Gerrit 时有哪些注意事项?-icode9专业技术文章分享
- 2024-11-19pnpm是什么?-icode9专业技术文章分享