BufferedReader没有读取所有行

时间:2013-12-30 20:54:08

标签: java android

我遇到的问题是,当我运行时:

public class ConfigParser extends AsyncTask<Void, Void, String> {

private String xml;

@Override
protected String doInBackground(Void... params) {
    try {

        DefaultHttpClient client=new DefaultHttpClient();
        String url = "http://landskronabois.se/nyheter.feed/";
        HttpGet get = new HttpGet(url);
        HttpResponse httpResponse=client.execute(get);
        HttpEntity entity=httpResponse.getEntity();

        InputStream is = entity.getContent();
        BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"),8192);
        StringBuilder sb = new StringBuilder();
        String line=null;

        while((line=reader.readLine())!=null){
            sb.append(line+"\n");
        }
        is.close();
        xml =sb.toString();

    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (ClientProtocolException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    Log.i("main XML", "" + xml);
    return xml;
}
    @Override

protected void onPostExecute(String result) {
    // TODO Auto-generated method stub
    super.onPostExecute(result);
}
}

它应该给我这个http://www.landskronabois.com/kategori/nyheter/feed/,但只返回这个:

    <rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
>
<channel>
<title>Landskrona BoIS &#187; Nyheter</title>
<atom:link href="http://www.landskronabois.com/kategori/nyheter/feed/" rel="self" type="application/rss+xml" />
<link>http://www.landskronabois.com</link>
<description>Officiell webbplats med nyheter, tabeller, spelarprofiler och biljettinformation.</description>
<lastBuildDate>Mon, 30 Dec 2013 16:33:12 +0000</lastBuildDate>
<language>sv-SE</language>
<sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>
<generator>http://wordpress.org/?v=3.7.1</generator>
<item>
<title>Jullucka 22:e december &#8211; 2013 i bilder</title>
<link>http://www.landskronabois.com/2013/12/22/jullucka-22e-december-2013-bilder/</link>
<comments>http://www.landskronabois.com/2013/12/22/jullucka-22e-december-2013-bilder/#comments</comments>
<pubDate>Sun, 22 Dec 2013 08:00:05 +0000</pubDate>
<dc:creator><![CDATA[Max Lundmark]]></dc:creator>
<category><![CDATA[BoIS Julkalender]]></category>
<category><![CDATA[Nyheter]]></category>
<guid isPermaLink="false">http://www.landskronabois.com/?p=6799</guid>
<description><![CDATA[<img src="http://www.landskronabois.com/wp-content/uploads/2013/12/dag22-355x193.jpg" alt="Jullucka 22:e december &#8211; 2013 i bilder" width="320" height="174" /><div class="pf-content"><p><strong>Året närmar sig sitt slut och ännu ett BoIS år är framför oss. Under 2013 har flera ögonblick förevigats på Landskrona IP. Här är en tillbakablick på året som gått:</strong></p>
<p><a href="http://www.landskronabois.com/wp-content/uploads/2013/12/förstaträning-13-01-071.jpg"><img class="alignnone size-medium wp-image-6806" alt="Årets första träninge den 7:e januari. " src="http://www.landskronabois.com/wp-content/uploads/2013/12/förstaträning-13-01-071-300x206.jpg" width="300" height="206" /></a></p>
<p>&nbsp;</p>
<p><a href="http://www.landskronabois.com/wp-content/uploads/2013/12/dahlklar-13-2-1.jpg"><img class="alignnone size-medium wp-image-6811" alt="Andreas Dahl presenterades som BoIS-spelare den 1:e februari. " src="http://www.landskronabois.com/wp-content/uploads/2013/12/dahlklar-13-2-1-300x208.jpg" width="300" height="208" /></a></p>
<p><a href="http://www.landskronabois.com/wp-content/uploads/2013/12/snöigt-IP-inför-första-träningsmatchen-13-2-82.jpg"><img class="alignnone size-medium wp-image-6813" alt="Snöig träning inför första träningsmatchen. " src="http://www.landskronabois.com/wp-content/uploads/2013/12/snöigt-IP-inför-första-träningsmatchen-13-2-82-300x200.jpg" width="300" height="200" /></a></p>
<p><a href="http://www.landskronabois.com/wp-content/uploads/2013/12/lagfoto-.jpg"><img class="alignnone size-medium wp-image-6814" alt="Landskrona BoIS A-lag 2013" src="http://www.landskronabois.com/wp-content/uploads/2013/12/lagfoto--300x200.jpg" width="300" height="200" /></a></p>
<p><a href="http://www.landskronabois.com/wp-content/uploads/2013/12/BB130406NJ033.jpg"><img class="alignnone size-medium wp-image-6815" alt="Tifo inför premiären!" src="http://www.landskronabois.com/wp-content/uploads/2013/12/BB130406NJ033-300x179.jpg" width="300" height="179" /></a></p>
<p><a href="http://www.landskronabois.com/wp-content/uploads/2013/12/BB130406NJ032.jpg"><img class="alignnone size-medium wp-image-6816" alt="Klacken hyllade Landskrona" src="http://www.landskronabois.com/wp-content/uploads/2013/12/BB130406NJ032-300x157.jpg" width="300" height="157" /></a></p>
<p><a href="http://www.landskronabois.com/wp-content/uploads/2013/12/premiären-2013-4-6.jpg"><img class="alignnone size-medium wp-image-6817" alt="Surprise avgjorde premiären mot Degerfors. " src="http://www.landskronabois.com/wp-co

为什么它会像那样切断,我做错了什么?

感谢您的回复

编辑:这适用于普通的java,但不适用于android。

1 个答案:

答案 0 :(得分:0)

不要重新发明轮子,使用库来执行此操作。看看Apache的commons-io中的org.apache.commons.io.IOUtils。它可以将InputStream甚至URL / URI转换为字符串。