解析没有对象的JSON文件Swift

问题描述 投票:-1回答:1

我正在尝试使用Swift解析以下JSON文件。我对如何解析没有对象的文件迷失了,所以任何帮助都会很棒。以下是示例JSON

[
    "sleeping bag",
    "Arabian camel, dromedary, Camelus dromedarius",
    "water"
]

我为解码文件设置的代码如下

struct ItemsStruct: Codable {
    let item: String
}

public extension Decodable{
    static func fromFile<T : Decodable>(_ filename : String, class : T.Type)->T?{
        let fileparts = filename.split(separator: ".")
        guard fileparts.count == 2 else{
            return nil
        }
        guard let path = Bundle.main.url(forResource: String(fileparts[0]), withExtension: String(fileparts[1])),
            let data = try? Data.init(contentsOf: path),
            let _struct = try? JSONDecoder().decode(T.self, from: data) else{
                return nil
        }
        return _struct
    }
}

guard let items = ItemsStruct.fromFile("objects.json", class: [ItemsStruct].self) else {return}
        for item in items{
            print(item)
        }

我知道我不应该有“ let item:String”,但是由于没有对象,我不确定要在结构中放入什么。

我需要其他JSON数据吗?

json swift parsing struct codable
1个回答
0
投票

这是String的数组

guard let items = [String].fromFile("objects.json", class: [String].self) else {return}
for item in items{
    print(item)
}

顺便说一下,语法很奇怪。

© www.soinside.com 2019 - 2024. All rights reserved.