com解析XML的问题-Iphone
英文翻译,非作品。原文如下 先生 我正在连接到web服务器,并获取具有以下格式的XML文件:com解析XML的问题-Iphone,iphone,xml,parsing,Iphone,Xml,Parsing,英文翻译,非作品。原文如下 先生 我正在连接到web服务器,并获取具有以下格式的XML文件: <?xml version="1.0" encoding="ISO-8859-1"?> <programacao> <agenda> <data>17/02</data> <cidade>Barueri</cidade> <estado>SP</estado> </agenda> &l
<?xml version="1.0" encoding="ISO-8859-1"?>
<programacao>
<agenda>
<data>17/02</data>
<cidade>Barueri</cidade>
<estado>SP</estado>
</agenda>
<agenda>
<data>19/02</data>
<cidade>Maringá</cidade>
<estado>PR</estado>
</agenda>
<agenda>
<data>17/03</data>
<cidade>Cubatão</cidade>
<estado>SP</estado>
</agenda>
</programacao>
。。。带有重音的单词会被截断。
我在原木上发现了几条断线。。。就像单词Cubatão
在一行显示为Cubat
,在下一行显示为o
,或者Maringá
在一行显示为Maring
,在下一行显示为
我尝试了很多不同的东西,但当我把它们放在桌上时,我得到的只是切碎的东西。我能做些什么来解决这个问题
原创的
参议员
这是一个很好的网站,一个很好的网站
XML无分段格式:
<?xml version="1.0" encoding="ISO-8859-1"?>
<programacao>
<agenda>
<data>17/02</data>
<cidade>Barueri</cidade>
<estado>SP</estado>
</agenda>
<agenda>
<data>19/02</data>
<cidade>Maringá</cidade>
<estado>PR</estado>
</agenda>
<agenda>
<data>17/03</data>
<cidade>Cubatão</cidade>
<estado>SP</estado>
</agenda>
</programacao>
就像阿森图阿达斯宫殿一样。。维乔·奎布拉达斯·埃姆·瓦利亚斯
林没有日志。。。tipo Cubat na outra linhaão。。。马林纳奥特拉
林哈阿
Játentei vários recursos,mas quando jogo na表视图为palavras
阿森图阿达斯·索菲卡姆·奥斯佩达·奥斯。O是否有可能发生冲突
问题?我不会说葡萄牙语,但我会说西班牙语,所以我想我理解你的一些问题
您最好使用包装器库来解析名为XML的XML
如果需要更多信息,请留下评论。在-(void)parser:(NSXMLParser*)parser foundCharacters:(NSMutableString*)string
中,您正在将currentNodeContent
设置为string
。
我相信您希望将字符串
附加到currentNodeContent
而不是替换它
葡萄牙语翻译
没有método-(void)解析器:(NSXMLParser*)解析器找到字符:(NSMutableString*)字符串
vocêestásetandocurrentNodeContent
para o que vem nastring
,mas fazendo isso vocêperde o que jáestava láantes。这是一个很好的例子,它是一个非常好的例子。Vocêdeveria fazer um append docurrentNodeContent
com astring
ao invés de substituir o que játinha antes.我几乎不懂葡萄牙语,但你应该尽量不要使用带有重音符号的单词。这是一个糟糕的编程实践。我喜欢独特的音乐。我们是一个国际社会,请使用英语。@Chuck Birkin重音词不在代码中,而是在XML中包含的数据中。他在解析数据并将其存储在字符串中时遇到问题。@filipe-您是我们社区的资产,感谢您花时间翻译此内容。@Tim Post aw拜托,您让我脸红了…:)谢谢你的帮助:)不要犹豫,给你的帖子添加翻译。@Tim post哦,是的,我没想到。谢谢你的帮助,我会一直用英语发布。我将尝试添加字符串。。这个解决方案真的有效吗?我认为您的问题更多地与如何将XML文件(NSData?)编码为NSString有关。尝试使用NSUTF8StringEncoding使用initWithData:encoding
,看看是否有帮助。我遇到了同样的问题,但尚未找到解决方案。Rog似乎是最接近答案的(这是一个编码问题),但我仍然没有解决它。有人有明确的答案吗?
<?xml version="1.0" encoding="ISO-8859-1"?>
<programacao>
<agenda>
<data>17/02</data>
<cidade>Barueri</cidade>
<estado>SP</estado>
</agenda>
<agenda>
<data>19/02</data>
<cidade>Maringá</cidade>
<estado>PR</estado>
</agenda>
<agenda>
<data>17/03</data>
<cidade>Cubatão</cidade>
<estado>SP</estado>
</agenda>
</programacao>
-(id)loadXMLByURL:(NSString *)urlString
{
minhaAgenda = [[NSMutableArray alloc] init];
NSURL *url = [NSURL URLWithString:urlString];
parser = [[NSXMLParser alloc] initWithContentsOfURL:url];
parser.delegate = self;
[parser parse];
return self;
}
- (void)parser:(NSXMLParser *)parser didStartElement:(NSMutableString
*)elementName
namespaceURI:(NSMutableString *)namespaceURI qualifiedName:
(NSMutableString *)qName attributes:(NSDictionary *)attributeDict
{
if ([elementName isEqualToString:@"agenda"])
{
currentEvento = [Agenda alloc];
currentNodeContent = [[NSMutableArray alloc] init];
}
}
-(void)parser:(NSXMLParser *)parser didEndElement:(NSMutableString
*)elementName namespaceURI:(NSMutableString *)namespaceURI
qualifiedName:(NSMutableString *)qName
{
if ([elementName isEqualToString:@"agenda"])
{
[minhaAgenda addObject:currentEvento];
[currentEvento release];
currentEvento = nil;
[currentNodeContent release];
currentNodeContent = nil;
}
if ([elementName isEqualToString:@"cidade"])
{
currentEvento.cidade = currentNodeContent;
}
if ([elementName isEqualToString:@"estado"])
{
currentEvento.estado = currentNodeContent;
}
if ([elementName isEqualToString:@"data"])
{
currentEvento.data = currentNodeContent;
}
}
-(void)parser:(NSXMLParser *)parser foundCharacters:(NSMutableString
*)string
{
currentNodeContent = [string stringByTrimmingCharactersInSet:
[NSCharacterSet whitespaceAndNewlineCharacterSet]];
NSLog(@"%@", currentNodeContent);
}