导致错误的Swift xml解析器
我正试图解析一个简单的xml文件,但我一直得到错误 “错误描述:操作无法完成。(错误-1。) 行号:0“ XML文件(名为mathquick.XML,放在名为img的文件夹中):导致错误的Swift xml解析器,xml,swift,Xml,Swift,我正试图解析一个简单的xml文件,但我一直得到错误 “错误描述:操作无法完成。(错误-1。) 行号:0“ XML文件(名为mathquick.XML,放在名为img的文件夹中): 如何使其成功解析XML文件?我看不出有什么问题。首先,要从捆绑包的内容中读取文件,请执行以下操作: let parser = QuizXMLParser() if let path = Bundle.main.url(forResource: "mathQuiz", withExtension: "xm
如何使其成功解析XML文件?我看不出有什么问题。首先,要从捆绑包的内容中读取文件,请执行以下操作:
let parser = QuizXMLParser()
if let path = Bundle.main.url(forResource: "mathQuiz", withExtension: "xml") {
parser.beginParsing(file: path)
}
然后将函数beginParsing(fileurl:String)更改为接受url而不是字符串
public func beginParsing(file url: URL) {
guard let parser = XMLParser(contentsOf: url) else {
print("Cannot Read Data")
return
}
parser.delegate = self
if !parser.parse(){
print("Data Errors Exist:")
let error = parser.parserError!
print("Error Description:\(error.localizedDescription)")
print("Line number: \(parser.lineNumber)")
}
}
这应该可以解决您的问题。XML文件应该从
开始。为什么要使用NSURL
而不是URL
?我在MakeAppie.com上学习了一个XML教程,那个家伙使用了NSURL。我会换的
let parser = QuizXMLParser()
parser.beginParsing(file: "img/mathquiz.xml")
let parser = QuizXMLParser()
if let path = Bundle.main.url(forResource: "mathQuiz", withExtension: "xml") {
parser.beginParsing(file: path)
}
public func beginParsing(file url: URL) {
guard let parser = XMLParser(contentsOf: url) else {
print("Cannot Read Data")
return
}
parser.delegate = self
if !parser.parse(){
print("Data Errors Exist:")
let error = parser.parserError!
print("Error Description:\(error.localizedDescription)")
print("Line number: \(parser.lineNumber)")
}
}