我正在開發一個應用程序,該應用程序在專用服務器上進行搜索並向用戶顯示結果。問題是NSXLParser無法解析特殊的德語和法語字符。例如:它應該是:(Geschäftsführer) - >我得到的是:(äftsführer)NSXMLParser無法解析特殊字符(德語和法語)
我該如何解決這個問題?
這裏是我的代碼:
- (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文件嗎? – kuba
您的'foundCharacters'方法也是錯誤的 - 即使對於單個字符串值,您也可以獲得多個對此函數的調用 – kuba