首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSXMLElement *xml =[NSXMLElement alloc]initWithXMLString:xmlString :Nil]autorelease]不工作

NSXMLElement *xml =[NSXMLElement alloc]initWithXMLString:xmlString :Nil]autorelease]不工作
EN

Stack Overflow用户
提问于 2011-11-10 13:13:51
回答 1查看 1.1K关注 0票数 1

我有一个NSString,它看起来像这样:

代码语言:javascript
复制
 xmlstring=@"<DamageAccount><EntityState>Added</EntityState><Id>5555</Id><DamageList><Damage><Id>5727</Id></Damage></DamageList><Time>2011-09-22T11:38:12</Time><Title>DamageAcc</Title></DamageAccount><Damage><EntityState>Added</EntityState><Id>5727</Id><DamageType><Id>5726</Id></DamageType><Description>Bad</Description><Name>Da1</Name></Damage><DamageType><EntityState>Added</EntityState><Id>5726</Id><Description>Big</Description><Name>Fire</Name><Symbol>Fire</Symbol></DamageType>";

但是我想创建一个NSXMLElement。所以我用:

代码语言:javascript
复制
NSXMLElement *xml = [[[NSXMLElement alloc] initWithXMLString:xmlString error:nil] autorelease];

在我运行程序的时候,我得到了一个错误消息,我的程序崩溃了。

我得到的错误是:

代码语言:javascript
复制
Entity: line 1: parser error : Extra content at the end of the
document
ageList><Time>2011-09-22T11:38:12</Time><Title>DamageAcc</Title></DamageAccount>

有人知道我的节目出了什么问题吗?

EN

回答 1

Stack Overflow用户

发布于 2011-12-18 14:25:44

XML文档只能有一个根元素。示例xmlString有多个根元素:

代码语言:javascript
复制
1. <DamageAccount>...</DamageAccount>
2. <Damage>...</Damage>
3. <DamageType>...</DamageType>

您应该将它们封装在一个元素中:

代码语言:javascript
复制
<rootDamageElement>
    <DamageAccount>...</DamageAccount>
    <Damage>...</Damage>
    <DamageType>...</DamageType>
</rootDamageElement>

(注:我已经阅读了关于这个问题的评论,并承认海报上说他们发布了错误的字符串,但我觉得这个问题仍然需要有人来回答。)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8080035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档