我正在從Web服務中返回一些XML。基本上,XML看起來是這樣的:使用NSXMLParser解析
<response>
<data>
More XML here but the it's escaped by XML entities
</data>
</response>
所以,你可以看到,我的XML是有效的,但數據標籤裏面的東西是逃脫了與XML實體。什麼是最好的(最有效的)方式來將它提供給解析器?
我現在正在做的是,當我從Web服務獲取數據時,我將它轉換爲NSString ....然後將「XML轉義實體」替換爲真正的.....然後將其轉換回來到NSData中...然後將其饋入解析器。這似乎不是一個很好的解決方案,所以我想知道是否有更好的方法來做到這一點?
謝謝。
好吧,下面是我收到的XML:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Header><ActivityId CorrelationId="d39007b5-ee69-41c7-a61d-831b456f9ea3" xmlns="http://schemas.microsoft.com/2004/09/ServiceModel/Diagnostics">aa88d1cd-253c-48d1-abeb-62a880bea806</ActivityId></s:Header><s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><LoginResponse xmlns="http://MSS"><LoginResult><LoginInformation>
<User>
<UserID>612</UserID>
<UserName>Demo User</UserName>
<Email>[email protected]</Email>
<CompanyID>17034</CompanyID>
<CompanyName>PlanET Demonstration Agency</CompanyName>
</User>
</LoginInformation></LoginResult></LoginResponse></s:Body></s:Envelope>
正如你所看到的,一切都在被轉義。
你能提供一個更好的例子嗎?是否只是像&這樣的數據中的東西被轉義或者是否存在像<元素名稱>等被轉義的完整xml標記... – bryanmac
更新了我的問題。請檢查一下。謝謝 – 0xSina