Java HttpClient响应只有一行XML

Java HttpClient响应只有一行XML,java,android,apache,httpclient,Java,Android,Apache,Httpclient,我正在使用HttpClient获取XML文件,但在获取返回的整个文档时遇到问题(它只返回XML文件的一行)。因此: 生成的字符串总是 我需要做些什么来告诉HttpClient加载整个文件或处理换行符之类的事情吗?XML非常简单: <?xml version="1.0" encoding="UTF-8"?> <project> <group-id type="integer">2187</group-id> <icon type

我正在使用HttpClient获取XML文件,但在获取返回的整个文档时遇到问题(它只返回XML文件的一行)。因此:

生成的字符串总是

我需要做些什么来告诉HttpClient加载整个文件或处理换行符之类的事情吗?XML非常简单:

<?xml version="1.0" encoding="UTF-8"?>
<project>
    <group-id type="integer">2187</group-id>
    <icon type="integer">2</icon>
    <name>Android</name>
    <overview>android app</overview>
    <permalink>codebase</permalink>
    <start-page>tickets</start-page>
    <status>active</status>
</project>

2187
2.
安卓
安卓应用程序
代码基
票
积极的
试试这个

HttpResponse response = client.execute(request);
            in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));

            StringBuffer sb = new StringBuffer("");
            String line = "";
            String NL = System.getProperty("line.separator");
            while((line = in.readLine()) != null){
                sb.append(line + NL);
            }
            in.close();

            String page = sb.toString();
            Log.d("Join", page);

如果只想获取xml数据,最好扩展DefaultHandler。并使用SAXParser、XMLReader等解析器。

如果将
BasicResponseHandler
作为响应处理程序传递,则执行的结果应该是整个响应体

如果你只收到一行,我的理论是,这就是服务器发送的全部内容


查看服务器日志,查看在生成响应主体时是否引发异常。(例如,如果您使用JSP进行渲染,则无法通过HTTP状态代码将抛出的异常报告回客户端。相反,客户端将看到一个200响应,其正文被截断。)

日志中没有任何内容。目前它只是一个静态XML文件。我可以在浏览器中指向URL,它显示得很好。几天前它还在工作,我只是重新启动了IntelliJ和模拟器,现在它正在加载整个身体。我想是我的AVD出了问题。不管怎样,谢谢你的建议。我使用的是DefaultHandler和SAX,我写这篇文章只是想弄清楚为什么我的XML没有完全加载
HttpResponse response = client.execute(request);
            in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));

            StringBuffer sb = new StringBuffer("");
            String line = "";
            String NL = System.getProperty("line.separator");
            while((line = in.readLine()) != null){
                sb.append(line + NL);
            }
            in.close();

            String page = sb.toString();
            Log.d("Join", page);