Android XML解析器3G问题:结果字符串被拆分和重复

时间:2014-08-01 09:41:24

标签: android xml-parsing 3g-network

我必须从从webservice获取的XML中检索数据。

我使用SAX解析器,如下所示:

                URL url = new URL(this.pUrl);
                SAXParserFactory spf = SAXParserFactory.newInstance();
                SAXParser sp = spf.newSAXParser();
                XMLReader xr = sp.getXMLReader();
                ProductsHandler handler = new ProductsHandler();
                xr.setContentHandler(handler);
                InputSource is = new InputSource(url.openStream());
                is.setEncoding("ISO-8859-1");
                xr.parse(is);

XML项目:

<product>
    <id_product>4548</id_product>
    <name>Special snack 30gr chocolate</name>
    <price>15,00</price>
</product>

Handler代码段:

..
else if(localName.equals("name")){
            this.in_nome=true;
        }
..
else if(localName.equals("name")){
            this.in_nome=false;
        }
..
else if(this.in_name){
            xmlparsing.setNames(new String(ch , start , length));
        }

当我使用WiFi连接时,效果很好。

如果我使用3G连接,某些项目会被拆分并重复。

e.g。

WiFi行为:

Product name: Special snack 30gr chocolate

3G行为:

Product Name: Special sna;
Product Name: Special snack 30gr chocolate;

此行为会导致产品列表出现问题(与错误名称关联的产品ID)。

我该如何解决?

0 个答案:

没有答案