意外的令牌(位置:TEXT“ java.io.InputStreamReader@3422132中的@ 1:2)

时间:2019-03-31 20:36:37

标签: java android

我是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()));

1 个答案:

答案 0 :(得分:0)

有效的xml必须以XML声明开头,如下所示:

<?xml version="1.0" encoding="UTF-8"?>

如果您的Web服务的结果不包含它,则它不是有效的xml。但是您可以在解析它之前将其放在resultxml的前面。