...
你先发一个包,通知下面的包的大小,
然后接受方接受到这个包,知道了大小,再接受下一个包。
但是好像没有多大的意义,你用一个While循环等待包就可以了。
如:
发送方:
send 1024 bytes;
接受方:
while(ServerSocket.receive(packet))
    // getData; //每次都接受一点,假设是2bytes,经过512次的接受就会接受完毕
    // 连接数据。再如:[假设发送方每次发送1K,接受方每次接受1K]
发送端先发送一个包,指定是很大数据如 [[flag]pic.jpg,1000000bytes]
接收端一旦发现[flag]就去读后面的大小[1000000bytes]
然后在接受后面的每一个包,如果是你需要的包,就把他加到后面。我估计我所说的会比较麻烦。。