当前位置:编程学习 > JAVA >>

关于java通过socket接受xml的问题

新手,希望高手帮忙解答下,谢谢。
下面的是我发给服务器请求后服务器应该返回的消息。但我只能打印出第一排的消息(HTTP/1.1 200 OK),请问怎么能打印出来所有的信息?我的代码在下面

HTTP/1.1 200 OK
Content‐Type: text/xml
Content‐Length: 56

<?xml version="1.0" encoding="UTF‐8"?>
<Class>
    <Number>123456</Number>
    <Name>Xiao</Name>
</Class>

我用的方法:
...
BufferedReader input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String response = input.readLine();
System.out.println("the response is " + response);


得到的结果:the answer is HTTP/1.1 200 OK java xml --------------------编程问答-------------------- String response = input.readLine();
用这个不行,只读出了一行(从开始读到第一个回车或第一个回车换行为止)。应该先把所有内容读到一个内部缓冲,然后再输出。 --------------------编程问答--------------------
StringBuffer sb = new StringBuffer();
String str = null;
while((str = input.readLine() )!=null){
    sb.append(str);
}
--------------------编程问答-------------------- 要一行行的读。
补充:Java ,  Java SE
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,