网络编程-TCP程序实例(简单上传图片)
2016-01-20 09:09
639 查看
package netTest; /* * 客户端: * 1.服务端点 * 2.读取客户端已有的图片数据 * 3.通过socket输出流将数据发给服务端 * 4.读取服务端的反馈信息 * 5.关闭。 * */ import java.io.*; import java.net.*; import java.util.concurrent.SynchronousQueue; public class Client { public static void main(String[] args) throws Exception { Socket s = new Socket(InetAddress.getLocalHost(),6333); FileInputStream fis = new FileInputStream("1.jpg"); 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(); } } package netTest; 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 Server { public static void main(String[] args) throws Exception { // TODO Auto-generated method stub ServerSocket ss = new ServerSocket(6333); // 得到客户端对象 Socket s = ss.accept(); InputStream in = s.getInputStream(); FileOutputStream fos = new FileOutputStream("2.jpg"); 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()); out.close(); s.close(); ss.close(); } }
相关文章推荐
- HttpURLConnection官方文档翻译
- redis 网络流程图 <一>
- 一起来开发Android的天气软件(三)——使用Volley实现网络通信
- 在tomcat服务器下HttpServlet 连接mysql过程详解
- RESTEasy中的HTTP异步处理(下)
- RESTEasy中的HTTP异步处理(上)
- 快速可靠协议
- 网络游戏同步法则
- 影子跟随算法
- Android热门网络框架Volley详解
- wamp下Apache2.4.x 配置httpd.conf允许外部访问
- 网络编程之天气预报
- Ubuntu Nginx下配置网站ssl实现https访问
- 厦门巨游网络科技有限公司(HOTPOWER)承接游戏UI外包
- joomla 第一单元第六节分享K2到社交网络
- 湖北随州市推进教育信息化工作
- GUI/HTTP API观察queue的status不一致(翻译)
- asi打包ipa的坑
- Android Studio——HttpClient
- 《HTTP权威指南》学习笔记-HTTP报文