27-网络编程-18-网络编程(TCP协议-练习-上传图片服务端)
2015-08-11 17:29
495 查看
package test; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.ServerSocket; import java.net.Socket; public class UploadServerOfPhoto { public static void main(String[] args) throws IOException { //1.建立服务端ServerSocket对象 ServerSocket ss = new ServerSocket(10006); //2.获取客户端Socket对象 Socket s = ss.accept(); String ip = s.getInetAddress().getHostAddress();//获取客户端ip地址 System.out.println(ip+"......connected"); //3.获取Socket输入流,将客户端数据输入到服务端 InputStream in = s.getInputStream(); //4.将读取到的数据存储到文件中 File dir = new File("c:\\pic"); if(!dir.exists()) dir.mkdirs(); File file = new File(dir,ip+".bmp");//将客户端发来的数据存储到dir目录中,所以服务端生成的文件是ip.bmp FileOutputStream fos = new FileOutputStream(file); byte[] bufIn = new byte[1024]; int lenIn = 0; while((lenIn=in.read(bufIn))!=-1){ fos.write(bufIn,0,lenIn); } //5.反馈“上传成功”信息给客户端 OutputStream out = s.getOutputStream(); out.write("上传成功!!!".getBytes()); //6.关闭资源 fos.close(); s.close(); ss.close(); } } //【注】程序中in是读取客户端out过来的数据,fos是将读取到的客户端数据写入到本地文件中
相关文章推荐
- 26-网络编程-15-网络编程(TCP协议-练习-常见问题)
- 26-网络编程-16-网络编程(TCP协议-练习-上传文本文件)
- 26-网络编程-14-网络编程(TCP协议-练习-文本转换服务端)
- 26-网络编程-13-网络编程(TCP协议-练习-文本转换客户端)
- 26-网络编程-12-网络编程(TCP协议-服务端和客户端交互)
- hdu 4068 福州赛区网络赛H 排列 ***
- 26-网络编程-10-网络编程(TCP协议-客户端)
- 26-网络编程-11-网络编程(TCP协议-服务端)
- 26-网络编程-09-网络编程(UDP协议-聊天程序)
- 26-网络编程-08-网络编程(UDP协议-接收端)
- 网络中的长连接和短链接
- 26-网络编程-07-网络编程(UDP协议-发送端)
- 26-网络编程-06-网络编程(域名解析)
- 26-网络编程-05-网络编程(IP对象_InetAddress)
- Android 网络学习之使用多线程下载,支持断点续传
- 26-网络编程-03-网络编程(网络要素-端口)
- 26-网络编程-04-网络编程(网络要素-传输协议)
- 26-网络编程-02-网络编程(网络要素-IP地址)
- 26-网络编程-01-网络编程(网络模型概述)
- HTTPS 双向认证