Синтаксический анализ XML в swift завершается с ошибкой nil - PullRequest
0 голосов
/ 30 декабря 2018

Я пытаюсь проанализировать XML-файл, используя Swift.Я создал класс XMLParserDelegate OSM, который реализует следующие функции:

func parserDidStartDocument(_ parser: XMLParser)
func parserDidEndDocument(_ parser: XMLParser)
func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:])
func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?)

Я использую делегат следующим образом:

let url = URL(string: "file:///Users/<Username>/Documents/Maps/OSMFiles/simple.osm")!
print(url.absoluteString)
let parser = XMLParser(contentsOf: url)!
let osm = OSM()
parser.delegate = osm
print(parser.parse())
print(parser.parserError)

Код печатает следующее:

file:///Users/<Username>/Documents/Maps/OSMFiles/simple.osm
false
nil

1 Ответ

0 голосов
/ 30 декабря 2018

Оказывается, проблема была в изолированной программной среде приложения, возможно потому, что я пытался получить доступ к файлу вне песочницы.Отключение песочницы решает проблему.

...