我应该如何阅读\ 0 / null与套接字?

时间:2012-09-07 14:41:07

标签: java sockets

我试图从套接字读取,直到达到“\ 0”(null)。这是Flash使用的终结符。我也有这个问题,用C(++)。

while ((inputLine = in.readLine()) != null) {   
    outputLine = kkp.processInput(inputLine);
    out.println(outputLine);
    if (outputLine.equals("Bye."))
    break;
}

Oracle Java文档中的示例代码在我的情况下不起作用,因为“readLine”只计算\ r \ n等。我不知道如何阅读缓冲区,我对如何做到这一点有一些想法,但我不确定如何实现。

2 个答案:

答案 0 :(得分:0)

您可以使用DataInputStream对象从套接字读取单个字节。

DataInputStream inStream = new DataInputStream(socket.getInputStream());

byte next = inStream.readByte();

答案 1 :(得分:0)

你可以做到

InputStream in = socket.getInputStream();

for(int b; ((b = in.read()) > 0;) {
   // do something with b.
}
// stops at end of file or b == 0.