黑马程序员技术交流社区

标题: 关于Tcp上传图片的问题 [打印本页]

作者: 张文豪    时间: 2013-9-13 10:27
标题: 关于Tcp上传图片的问题
本帖最后由 张文豪 于 2013-9-13 12:07 编辑
  1. /*
  2. 需求:上传图片。
  3. */
  4. /*
  5. 客户端
  6. 1.服务端点
  7. 2.读取客户端已有的图片数据
  8. 3.通过socket输出流将数据发给服务端、
  9. 4.读取服务端反馈信息。
  10. 5.关闭、
  11. */
  12. import java.io.*;
  13. import java.net.*;
  14. class PicClient
  15. {
  16. public static void main(String[] args)throws Exception
  17. {
  18.   Socket s =new Socket("125.127.XXX.XX",10008);
  19.   FileInputStream fis = new FileInputStream("c:\\1.bmp");
  20.   OutputStream out = s.getOutputStream();
  21.   byte[] buf = new byte[1024];
  22.   int len = 0;
  23.   while((len=fis.read(buf))!=-1)
  24.   {
  25.    out.write(buf,0,len);
  26.   }
  27.   //告诉服务端数据已写完。
  28.   s.shutdownOutput();
  29.   InputStream in =s.getInputStream();
  30.   byte[] bufIn = new byte[1024];
  31.   int num = in.read(bufIn);
  32.   System.out.println(new String(bufIn,0,num));
  33.   fis.close();
  34.   s.close();
  35.   
  36.   
  37. }
  38. }
  39. /*
  40. 服务端
  41. */
  42. class PicServer
  43. {
  44. public static void main(String[] args)throws Exception
  45. {
  46.   ServerSocket ss =new ServerSocket(10008);
  47.   Socket s =ss.accept();
  48.   System.out.println("...connected");
  49.   InputStream in  = s.getInputStream();
  50.   FileOutputStream fos =new FileOutputStream("server.bmp");
  51.   byte[]buf = new byte[1024];
  52.   int len = 0;
  53.   while((len=in.read(buf))!=-1);
  54.   {
  55.    fos.write(buf,0,len);
  56.   }
  57.   OutputStream out =s.getOutputStream();
  58.   out.write("上传成功".getBytes());
  59.   fos.close();
  60.   s.close();
  61.   ss.close();
  62. }
  63. }
  64. <div class="quote"> </div>
复制代码


是什么情况导致的呢?

作者: 张文豪    时间: 2013-9-13 12:06
对比毕老师的程序10遍后,发现在53行后面加了个分号。。。。。。。。。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2