2016-04-07 18 views
1

JSON'u ayrıştırmada sorun yaşıyorum.JSON NSBundle Hatası - İş parçacığı 1: EXC_BAD_INSTRUCTION (kod = EXC_I386_INVOP, alt kod = 0x0)

Bu JSON yapısı şöyledir:

[{"id":33,"name":"5","sort":2},{"id":34,"name":"6","sort":3},{"id":35,"name":"7","sortOrder":4}] 

Ve çalıştırdıktan sonra ben FataLeRRoR var:

Thread 1:EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)” with code "fatalError("error")" 

Sorun NSBundle beraberdir. Sanırım kod ekledim çünkü kod ekledim: Ama "bölümler" yoktur. Aslında JSON ile bağlantının hiçbir yolu yoktur - sadece nesneler vardır (kimlik, ad, sıralama vb.). Peki bu sorunu yönetmek için nöbetçi izin yolunu nasıl değiştirmeliyim = NSBundle?

+0

Uygulamanızda "section.json" bir dosya var mı? Eğer değilse, NSBundle ile ne yapıyorsunuz? – Larme

+0

Hayır, JSON URL'den dize olarak alındı. Peki, NSBundle yerine ne kullanmalıyım? – Szekspir

+0

Dize nasıl alınır? Alın ve onu NSData'ya dönüştürün (bunun için bir yöntem var). – Larme

cevap

-1

Bu amaçla "DocumentDirectory ve UserDomainMask" dosyanızı kontrol etmeniz gerekir kullanılabilir dosya, dosya orada varsa kod yukarıdaki

let resourcePath = (bundle as! NSBundle).pathForResource("sections", ofType: "Json") 

Dizininizde dosya bulacaksınız, kontrol etmek gerekmez.

let resourcePath = self.bundle.pathForResource("sections", ofType: "Json"); 

P.S Lütfen dosyanızın copyBundleResources içinde olduğunu kontrol edin.