无法在Swift中解析XML

时间:2020-03-16 19:08:52

标签: json swift xml parsing codable

我正在尝试使用Swift游乐场从Internet解析XML文件:

import Foundation

struct Food: Codable {
    var name: String
    var price: String
}

var food: [Food]

let urlString = "https://www.w3schools.com/Xml/simple.xml"

if let url = URL(string: urlString),
    let data = try? Data(contentsOf: url) {

    let decoder = PropertyListDecoder()

    do {
        food = try decoder.decode([Food].self, from: data)
    }
    catch { print(error)}

} else {
    print("Problem loading data")
}

运行时出现错误:

dataCorrupted(Swift.DecodingError.Context(codingPath: [], debugDescription: "The given data was not a valid property list.", underlyingError: Optional(Error Domain=NSCocoaErrorDomain Code=3840 "Encountered unknown tag breakfast_menu on line 2" UserInfo={NSDebugDescription=Encountered unknown tag breakfast_menu on line 2, kCFPropertyListOldStyleParsingError=Error Domain=NSCocoaErrorDomain Code=3840 "Malformed data byte group at line 1; invalid hex" UserInfo={NSDebugDescription=Malformed data byte group at line 1; invalid hex}})))

请帮助使其正常工作。

0 个答案:

没有答案