A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈斌 中级黑马   /  2012-2-28 19:07  /  2628 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package five.day;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.UnknownHostException;

public class demop2 {

        /**
         * @param args
         */
        public static void main(String[] args) {
                // TODO Auto-generated method stub

        }

}
/*
需求:上传图片。


*/  
/*
客户端:
1、服务端点。
2、读取客户端已有的图片数据
3、通过Socket输出流,将数据发给服务端
4、读取服务端反馈的信息
5、关闭
*/  
class PCliencet
{
       
        public static void main(String[] args) throws  IOException {
                // TODO Auto-generated method stub
                Socket s=new Socket("127.0.0.1",10008);
                FileInputStream fis=new FileInputStream("g:/java/java网络2/1.jpg");
                OutputStream os=s.getOutputStream();
                byte buf[]=new byte[1024];
                System.out.println("11"+buf);
                int len=0;
                while((len=fis.read(buf))!=-1)
                {
                         System.out.println("55"+buf);
                        os.write(buf,0,len);
                         System.out.println("55");
                       
                }
           s.shutdownOutput();
          InputStream is=s.getInputStream();
   byte b[]=new byte[1024];
   int num=is.read(b);
   String sss=new String(b,0,num);
   System.out.println(sss);
   fis.close();
        s.close();
        }
       
       
}
class pServer
{
        public static void main(String args[]) throws IOException
        {
                ServerSocket ss=new ServerSocket(10008);
                Socket s=ss.accept();
                FileOutputStream fos=new FileOutputStream("g/java/java网络2/55.jpg");
                InputStream in=s.getInputStream();
                byte buf[]=new byte[1024];
                int len=0;
                while((len=in.read(buf))!=-1)
                {
                        fos.write(buf,0,len);
                }
                OutputStream os=s.getOutputStream();
                os.write("上传成功!".getBytes());
                fos.close();
                s.close();
                ss.close();
        }
}

为什么客服端的打印的方法发现buf为空、、为什么没读到字节呢??

1 个回复

倒序浏览
好吧 大意了  路径写错了g/java/java网络2/55.jpg 少了个:

评分

参与人数 1黑马币 +2 收起 理由
admin + 2 细心!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马