用的c/s模式,传文件和聊天都是先传到服务器,在转发到客户端,我现在用的是DataInputStream和DataOutputStream,请问聊天内容的流和传文件的流需要分开吗?不分开的话文件没传完,会不会和聊天内容的流发生冲突!!!具体怎么实现比较好?

解决方案 »

  1.   

    回答具体点就好了  分开的话 问题是socket和serversocket只有两个流啊!
      

  2.   

    同一个socket冲突倒不会,可能无法同时接收吧,这个要实验下,或可改进。还是要通过甄别数据类型来分别对待发送//to send
    Socket s = ...
    OutputStream os = s.getOutputStream();
    if(messageIsText()){
      os.write(0);
      //send text
    else{
      os.write(1); 
      //send file
    }
    接收:Socket s = serverSocket.accept();
    InputStream in = s.getInputStream();
    int firstbyte = in.read();
    if(firstbyte = 0){
       //read text
    }
    else{
       //read file
    }
      

  3.   

    这俩好像不是流,是两个SOCKET,SOCKET里面放流~ 应该是这样
      

  4.   

    http://bbs.csdn.net/topics/390352988
    看下这个