0

Swift 4.1 で JSON Decoder を使用しようとしていますが、取得し続けます

「データの形式が正しくないため、データを読み取ることができませんでした」

理由がわかりません。から JSON ファイルをBundle.main.path呼び出し、URL(fileURLWithPath:).

ファイル パスを調べてローカルで開くと、JSON データは適切な形式になっているようです。私のdata.jsonファイルでは、データは次のように設定されています。

{
    "plant": "1015",
    "name": "SPEEDVALE",
    "key": "5035",
}

私はこのような構造体を持っています

struct AllData: Decodable {
    let plant: String
    let name: String
    let key: String
}

次に、このように宣言された変数があります

private var x: [AllData] = []

そして、コードのデコードブロックは次のようになります

do {
    let path = Bundle.main.path(forResource: "data", ofType: "json")
    let jsonData = try Data(contentsOf: URL(fileURLWithPath: path!))

    do {
        plantDataSerialized = try [JSONDecoder().decode(AllData.self, from: jsonData)]
        print(plantDataSerialized)
    } catch let error{
        print(error.localizedDescription)
    }
} catch let error {
    print(error.localizedDescription)
}
4

2 に答える 2