这是我创建的一个客户端                        socket = new Socket(host,port);
                        dos = new DataOutputStream(socket.getOutputStream());
                        dis = new DataInputStream(socket.getInputStream());另有一个用VC写的服务端
现在的情况是,客户端发报文后,如果服务端没给应答报文.客户端就一直等待数据到来.
Java 可不可以判断 dis 中有没有数据呢. 或者 我dis.read可以跟一个超时呢,就是我只等2秒,如果应答报文长度不够,我就不等回码了.
 我接收的函数是:
        public int recv(byte[] buff,int offset, int len)
        {
                int reads = 0;                try
                {
                        //在这里不Read时,可以知道dis中有没有数据到达吗.我想没有报文到达就
                        //不读了,要不一读就阻在那里了.应加什么判断呀.
                        reads = dis.read(buff,offset,len);
                }
                catch(Exception e)
                {
                        System.out.println("Exception:"+e);
                }
                return reads;
        }