如何在 Swift 中将 JSON 转换为数据类型?

Posted

技术标签:

【中文标题】如何在 Swift 中将 JSON 转换为数据类型?【英文标题】:How can I convert a JSON as Data Type in Swift? 【发布时间】:2020-12-22 10:28:48 【问题描述】:

我想快速将数据发送到我的 websocket 服务器,但 websocket 服务器写入函数只接受字符串或数据类型。由于我没有为 swift 找到任何 JSON.stringify 选项,我使用 swiftyJson 创建自己的 JSON 类型,但现在我需要将其转换为数据以便能够将其发送到服务器。

 var json: JSON =  ["name": "Jack", "age": 25]
        socket?.send(data: json <-- This needs to be Data)

我尝试将 JSON 包装在 Data(json) 中,但这也不起作用。如果有解决方案,我安装了 swiftyJson 的任何想法

【问题讨论】:

看看这个。 ***.com/a/40434702/14359662 【参考方案1】:

最简单的方法是文字

let json =  #""name": "Jack", "age": 25"#
let data = Data(json.utf8)

使用SwiftyJSON 也很简单,但效率较低。

let json: JSON =  ["name": "Jack", "age": 25]
let data = try! json.rawData()

【讨论】:

【参考方案2】:
let data = Data(json.utf8)

顺便说一句,我不建议您使用外部库来完成如此简单的任务,因为您会依赖第三方的作品,而您无法控制这些作品。 改用基础模型。

【讨论】:

以上是关于如何在 Swift 中将 JSON 转换为数据类型?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 中将 Realm 对象转换为 JSON?

如何在 Swift 中将数据转换为 Doubles、Ints 和 Strings 等类型?

如何在 Swift 3 中将 NSData 转换为数据?

如何在 swift 3 中将具有自定义类的数组转换为 JSON

在 Swift 中将字典转换为 JSON

在 Swift 中将字典转换为 JSON