如何在SwiftyJson中将文件转换为JSON对象

时间:2016-04-16 21:41:30

标签: swift macos cocoa swifty-json

我试图将用户上传的txt文件中的Json数据导入到我可以通过SwiftyJson框架使用的标准对象

以下是文本fie的内容:

{
  "String": "answer",
  "String2": "answer2"
}

我已成功阅读并使用以下内容将其转换为String文件:

  

让openPanel = NSOpenPanel()           let arrayOfExtensions = [“txt”]           openPanel.allowedFileTypes = arrayOfExtensions           let result = openPanel.runModal()

    if result == NSFileHandlingPanelCancelButton {
        return
    }
    let fileUrl = openPanel.URL

    do {
        let stringResult = try String(contentsOfURL: fileUrl!, encoding: NSUTF8StringEncoding)
        print (stringResult)

        completionhandler(retrievedData: stringResult, error: nil)

我正在尝试使用以下方法将其转换为JSON对象:

  

let jsonFile = JSON(contentsOfFile)

问题是,为rawvalue之外的所有字段创建的结果JSON对象显示为空白。

以下是调试控制台的屏幕截图。 enter image description here

如何从文件中成功读入字符串,然后通过SwiftJson正确填充?

1 个答案:

答案 0 :(得分:0)

上面的问题是我使用了错误的方法将其解析为JSON。

SwiftyJSON似乎记录不清,因此其他人也有类似的问题。

正确的方法是使用:

let jsonFile = JSON.parse(string:contentsOfFile)