0
我有一个web服务,其中有不同的数据库更改。当我消费web服务返回线与SQL标签,就像这样:如果标记有重音,NSXMLParser不会获取所有标记
<sql>
DELETE FROM TABLE WHERE ...
</sql>
<sql>
INSERT INTO TABLE WHERE ...
</sql>
<sql>
UPDATE TABLE SET ... WHERE ...
</sql>
我保存在NSMutableArray的这个代码是这样的:
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
if ([elementName isEqualToString:@"sql"]){
[maResultado addObject:[NSMutableString stringWithFormat:@"%@", ResultadoSoap]];
[ResultadoSoap setString:@""];
}
}
这是好事,但如果Web服务返回一个字一个口音(重音,因为是西班牙语),应用程序只能得到重音后的短语。 例子: Web服务回报这样的:
<sql>
INSERT INTO DATOS(datos, fecha) VALUES('Indagar si el médico a tenido oportunidad de ...', '20/02/2013')
</sql>
我这样做:
if ([elementName isEqualToString:@"sql"]){
[maResultado addObject:[NSMutableString stringWithFormat:@"%@", ResultadoSoap]];
[ResultadoSoap setString:@""];
}
,并在maResultado在objectatindex唯一有此:
édico a tenido oportunidad de ...', '20/02/2013')
备注 - 请不要使用'stringWithFormat:',除非你真的有格式化字符串。这:'[maResultado addObject:[NSMutableString stringWithFormat:@“%@”,ResultadoSoap]];'应该是:'[maResultado addObject:ResultadoSoap];' – rmaddy 2013-02-20 19:29:10