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