JAVA 网络编程(TCP 上传图片)
来源:互联网 发布:借款网站源码 编辑:程序博客网 时间:2024/06/02 08:05
例一:
/*客户端:1,服务端点2,读取客户端已有的图片信息3,通过socket 输出流将数据发给服务端4,读取服务端反馈信息5,关闭*/import java.io.*;import java.net.*;class PicClient{public static void main(String []args) throws Exception{Socket s = new Socket("127.0.0.1",5554);FileInputStream fis = new FileInputStream("a.bmp");OutputStream out = s.getOutputStream();byte [] buf = new byte [1024];int len = 0;while((len = fis.read(buf))!= -1){out.write(buf,0,len);}//告诉服务端 数据已经写完s.shutdownOutput();InputStream in = s.getInputStream();byte [] bufIn = new byte[1024];int num = in.read(bufIn);System.out.println(new String(bufIn,0,num));fis.close();s.close();}}/*服务端*/class PicServer{public static void main(String []args) throws Exception{ServerSocket ss = new ServerSocket(5554);Socket s = ss.accept();InputStream in = s.getInputStream();FileOutputStream fos = new FileOutputStream("server.bmp");byte []buf = new byte[1024];int len = 0;while((len = in.read(buf))!=-1){fos.write(buf,0,len);}OutputStream out = s.getOutputStream();out.write("上传成功!".getBytes());fos.close();s.close();ss.close();}}
//TCP 客户端并发上传图片/*客户端*/import java.io.*;import java.net.*;class PicClient{public static void main(String []args) throws Exception{//传入图片路径if(args.length != 1){System.out.println("请选择要上传的图片:");return;}File file = new File(args[0]);if( !(file.exists() && file.isFile())){System.out.println("文件不存在 或 文件已损坏!");return;}if( !file.getName().endsWith(".jpg")){System.out.println("文件格式错误,请重新选择!");return;}if(file.length() > 1024*1024*5){System.out.println("文件过大");return;}Socket s = new Socket("127.0.0.1",5554);FileInputStream fis = new FileInputStream(file);OutputStream out = s.getOutputStream();byte [] buf = new byte [1024];int len = 0;while((len = fis.read(buf))!= -1){out.write(buf,0,len);}//告诉服务端 数据已经写完s.shutdownOutput();InputStream in = s.getInputStream();byte [] bufIn = new byte[1024];int num = in.read(bufIn);System.out.println(new String(bufIn,0,num));fis.close();s.close();}}/*服务端*/class PicThread implements Runnable{private Socket s;PicThread(Socket s){this.s = s;}public void run(){int count =0;String ip = s.getInetAddress().getHostAddress();try{System.out.println(ip +"...connected!");InputStream in = s.getInputStream();File file = new File(ip+"("+count+").jpg");while(file.exists())file = new File(ip+"("+(++count)+").jpg");FileOutputStream fos = new FileOutputStream(file);byte []buf = new byte[1024];int len = 0;while((len = in.read(buf))!=-1){fos.write(buf,0,len);}OutputStream out = s.getOutputStream();out.write("上传成功!".getBytes());fos.close();s.close();} catch (Exception e){throw new RuntimeException( ip +"上传失败!");}}}class PicServer{public static void main(String []args) throws Exception{ServerSocket ss = new ServerSocket(5554);while(true){Socket s = ss.accept();new Thread(new PicThread(s)).start();}//ss.close();}}
- JAVA 网络编程(TCP 上传图片)
- Java基础-网络编程(TCP-上传图片)
- 网络编程(TCP上传图片文件)
- Java网络编程--TCP文件上传、图片上传示例
- Java基础24天--01--网络编程(TCP--上传图片)
- Java基础24天--02--网络编程(TCP--客户端并发上传图片)
- 使用Tcp网络编程上传图片
- 使用Tcp网络编程上传图片。
- Java网络编程Demo(二)TCP文件上传
- (101)Tcp网络编程练习:上传文件、上传图片、用户登录
- 黑马程序员-----网络编程中Tcp客户端并发上传图片
- 网络编程 TCP 入门以及如何上传图片
- 网络编程上传图片
- Java网络编程(TCP)
- java网络编程(tcp)
- 27-网络编程-17-网络编程(TCP协议-练习-上传图片客户端)
- 27-网络编程-18-网络编程(TCP协议-练习-上传图片服务端)
- 网络编程二:TCP传输、TCP双向传输、文本转换、并发上传图片、客户端并发登录
- 策略模式
- Palindrome Partitioning
- SVG介绍---摘自百度百科
- Android代码中实现WAP方式联网
- 圈内业务描述
- JAVA 网络编程(TCP 上传图片)
- java语法总结02--数组
- using namespace
- Struts 2.x 高级应用
- mysql开机启动设置
- Solr 优化主关键字索引
- java语法总结03--方法
- 缓存图片 — 或者不缓存 imageWithContentsOfFile imageNamed
- 解决VS编译错误:Failure during conversion to COFF: file invalid or corrupt