Файл чтения SwiftyJSON - null

Я пытаюсь прочитать файл j.json в папке моего проекта. Я не получаю ошибок при выполнении кода, но вместо распечатки все, что я получаю, - это "null". Первоначальное расширение файла было .rtf.

let jsonFilePath:NSString = NSBundle.mainBundle().pathForResource("j", ofType: "json")!
let jsonData:NSData = NSData(contentsOfFile: jsonFilePath as String, options: .DataReadingMappedIfSafe, error: nil)!
let json = JSON(data: jsonData)
println(json)

Обновление:

Проблема заключалась в том, что я использовал файл rtf (как уже упоминалось здесь < / а>). Вот правильный код.

let jsonFilePath:NSString = NSBundle.mainBundle().pathForResource("<INPUT FILE NAME>", ofType: "<FILE EXTENTION>")!
let jsonData:NSData = NSData(contentsOfFile: jsonFilePath as String, options: .DataReadingMappedIfSafe, error: nil)!
var error:NSError?
let json = JSON(data: jsonData, options: .AllowFragments, error: &error)
if error != nil{
   println(error!.localizedDescription)
   }
   else{
       println(json)
       }

person driver733    schedule 15.07.2015    source источник
comment
Вы проверили, что содержимое j.json файла является действительным JSON?   -  person Akhilrajtr    schedule 15.07.2015
comment
Вот мой исходный файл. Я изменил его имя и расширение на j.json (не уверен, что это вызвало проблему). dropbox.com/s/atfq1gtptrt4ojf/jsonResponse.rtf?dl=0 < / а>   -  person driver733    schedule 15.07.2015
comment
передайте экземпляр NSError параметру error, тогда вы, вероятно, получите ошибку   -  person vadian    schedule 15.07.2015


Ответы (1)


Сначала хорошие новости

  1. Ваш код правильный
  2. Если бы вы ошиблись jsonFilePath, contentsOfFile не удалось бы

Плохие новости

  1. Неправильный формат json? Вроде нет. Ваш образец правильно анализирует
  2. Я успешно создал приложение, используя ваш код + ваш json, и оно правильно анализирует. Я не получал ошибки.

Куда идти дальше?

  1. В качестве защиты используйте let json = JSON(data: jsonData, options: .AllowFragments, error: &error) и проверьте ошибку. Это всегда хорошая практика.

  2. # P5 #
    # P6 #
person SwiftArchitect    schedule 15.07.2015