将JSON中的字符串(由字符串数组组成)解析为Swift中的字符串数组

时间:2018-08-23 17:35:19

标签: json swift parsing

Swift提供了一种转换这样的原始字符串

的方法吗?
.gitignore

到字符串数组(node_modules/)?

我一直在寻找一种通过StackOverflow进行操作的方法,但是以这种特定方式,我找不到答案:/

2 个答案:

答案 0 :(得分:4)

在Swift 4和更高版本上,使用JSONDecoder

let rawString = "[\"John\",\"Anna\",\"Tom\"]"
let jsonData = rawString.data(using: .utf8)!
let strings = try JSONDecoder().decode([String].self, from: jsonData)

答案 1 :(得分:0)

https://github.com/DanielMartinus/Konfetti可能是当今的推荐做法(Swift 4 +)。

作为参考,这是与旧版Swift版本兼容的经典方法:

let rawString = "[\"John\",\"Anna\",\"Tom\"]"
let jsonData = rawString.data(using: .utf8)!
let strings = (try? JSONSerialization.jsonObject(with: jsonData, options: [])) as? [String] ?? []

根据Code Different answer的伊泰·费伯(Itai Ferber),它的功能应与“不同代码”答案大致相同。