【发布时间】:2012-09-26 09:31:35
【问题描述】:
我正在开发一个应用程序,该应用程序在私人服务器上进行搜索并将结果显示给用户。问题是 NSXLParser 无法解析特殊的德语和法语字符。例如:应该是:(Geschäftsführer) -> 我得到的是:(äftsführer)
我该如何解决这个问题?
这是我的代码:
- (void) parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
currentNodeContent = (NSMutableString *) [string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
}
- (void) parser:(NSXMLParser *)parser didStartElement:(NSString *)elementname namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
if ([elementname isEqualToString:@"results"])
{
currentJob = [SearchResult alloc];
}
}
- (void) parser:(NSXMLParser *)parser didEndElement:(NSString *)elementname namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if ([elementname isEqualToString:@"jobTitle"])
{
currentJob.jobTitle = currentNodeContent;
}
if ([elementname isEqualToString:@"location"])
{
currentJob.shortAddress = currentNodeContent;
}
if ([elementname isEqualToString:@"companyName"])
{
currentJob.employer = currentNodeContent;
}
if ([elementname isEqualToString:@"results"])
{
[self.jobs addObject:currentJob];
currentJob = nil;
currentNodeContent = nil;
}
}
任何帮助将不胜感激... 提前致谢
【问题讨论】:
-
你能给出你正在解析的 XML 文件的链接吗?
-
您的
foundCharacters方法也有误 - 即使是单个字符串值,您也可以多次调用此函数
标签: objective-c xml parsing special-characters nsxmlparser