【发布时间】:2015-03-28 14:25:43
【问题描述】:
我正在尝试通过 REST Web 服务下载 XML 格式的数据。 我已经用 NSXMLParser 创建了解析器,并在 TableView 中可视化了数据。
当我在 XML 文档中遇到带有重音的句子时遇到问题。
在一些研究中,我发现this 与我的问题非常相似并尝试实施它:
func parse(handler: () -> Void) {
self.handler = handler
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {
self.countCategoryScheme = 0
var url = NSURL(string: SomeStructure.firstLink);
var err:NSError = NSError()
var dataString: String = String(contentsOfURL: url!, encoding: NSUTF8StringEncoding, error: nil)!
var data: NSData = dataString.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)!
let parser = NSXMLParser(data: data)
let resulset = NSString(data: data, encoding: NSUTF8StringEncoding)
println(resulset)
parser.delegate = self;
parser.parse();
if !parser.parse() {
self.delegate?.XMLParserError(self, error: "I Parse Error")
println("I Parser error")
}
}
}
在println (resulset) 中,我打印了正确解码的整个 XML 文件。
问题是当我运行解析器时,重音字符没有被读取
这是我在解析器中找到 Characters 时的代码:
func parser(parser: NSXMLParser!, foundCharacters string: String!) {
myList[position] = string
}
编辑:
这是我的文档示例:
<Name xml:lang="en" xmlns="">National Accounts</Name>
<Name xml:lang="it" xmlns="">Contabilità nazionale</Name>
在println()中按上述正确打印文档。
相反,当我去保存找到的数据时,如果“它”为我保存了这个:
“兼容性”
【问题讨论】:
-
好的,我已经编辑了希望我更清楚:)
-
你能举一个例子来说明你在 String 中得到了什么(参考来源和你的期望)吗?
-
好的,我用一个例子编辑了
标签: ios swift nsxmlparser