我是Java和Android Studio的新手,正在尝试解析来自.NET Web服务的XML,我正在使用的XML如下所示
<RegisterViewModal>
<RegList>
<Register>
<Availability>test</Availability>
<Rating>0</Rating>
<Citieslist>
<Citieslist1>
<Citieslist1>
<Cityid>00000000-0000-0000-0000-000000000000</Cityid>
<Countryid>00000000-0000-0000-0000-000000000000</Countryid>
<Cityname>hyderabad</Cityname>
</Citieslist1>
</Citieslist1>
</Citieslist>
<CountryId>00000000-0000-0000-0000-000000000000</CountryId>
<IsQuote>false</IsQuote>
<IsRegisterd>false</IsRegisterd>
</Register>
</RegList>
</RegisterViewModal>
我尝试将编码更改为UTF-8,仍然存在问题。
String Resultxml= ServiceCallsLayer.TerstService();
String s1 = URLDecoder.decode(Resultxml, "UTF-8");
DocumentBuilder db=DocumentBuilderFactory.newInstance().newDocumentBuilder();
Document doc = db.parse(new ByteArrayInputStream(s1.getBytes()));
答案 0 :(得分:0)
有效的xml必须以XML声明开头,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
如果您的Web服务的结果不包含它,则它不是有效的xml。但是您可以在解析它之前将其放在resultxml的前面。