1
JSONの解析に問題があります。JSON NSBundleエラー - スレッド1:EXC_BAD_INSTRUCTION(コード= EXC_I386_INVOP、サブコード= 0x0)
これはJSONの構造である:
[{"id":33,"name":"5","sort":2},{"id":34,"name":"6","sort":3},{"id":35,"name":"7","sortOrder":4}]
そして実行した後、私は致命を持っている:
Thread 1:EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)” with code "fatalError("error")"
問題はNSBundleです。
guard let path = NSBundle.mainBundle().pathForResource("sections", ofType: "json"),
let jsonData = NSData(contentsOfFile: path) else {
fatalError("error")
}
do {
if let sections = try NSJSONSerialization.JSONObjectWithData(jsonData,
options: .MutableContainers) as? [String: AnyObject] {
// work with sections
let addr = Address(dict: sections)
print("sections")
}
} catch let error as NSError {
print(error)
}
しかし、「セクション」はありません。実際、JSONとのリンクにはパスがありません。オブジェクト(ID、名前、並べ替えなど)だけです。だから私はこの問題を管理するためにパスを変更する必要がありますか?あなたは、この目的のために、「DocumentDirectoryとUserDomainMask」でファイルをチェックする必要が
あなたのアプリケーションに 'sections.json'というファイルがありますか?もしそうでなければ、NSBundleで何をしていますか? – Larme
いいえ、JSONはURLから文字列として取り込まれます。ではNSBundleの代わりに何を使うべきですか? – Szekspir
文字列はどのように取得しますか?それを取得し、それをNSDataに変換します(メソッドがあります)。 – Larme