在我的应用程序中解析XML时,我在XML解析器的foundcharacters委托中有一个字符串。实际的字符串是'Aoyama-itchōmeStation',但是当我应用编码时,我将它作为'ōmeStation'。字符串的第一部分丢失了。我尝试了不同的编码,但没有任何对我有用。有没有人知道原因是什么?
这是我的代码:
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
if(titleFlag)
{
if(string)
{
objPlace.title = [string stringByReplacingPercentEscapesUsingEncoding: NSUTF8StringEncoding];
}
}
}
答案 0 :(得分:1)
'Aoyama-itch ōmeStation '是你得到的字符串'ōmeStation'。
我想解析字符串时会在初始解析中获得第一部分'Aoyama-itch',而第二部分'ōmeStation'。你正在做的是将它设置为标题。
所以在解析器找到charachters时进行初始解析...
self.title = @"Aoyama-itch";
并在第二组可用性中......
self.title = @"ōme Station";
这就是你所看到的。因此,将标题对象设为NSMutableString对象。
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
if(self.title==nil)
{
self .title = [[[NSMutableString alloc] init] autorelease];
}
[self.title appendString:<parsed Charachters>];
}