ios - 如何在 Swift 中将 XCode lldb 中的对象作为第一状态 JSON 读取?
问题描述
我有一些具有 Codable 协议的对象,因此它们来自服务 API 并变成字典。项目中有很多服务功能,所以我无法获取它们变成 JSON 或字典的点,我无法看到这些对象的第一个状态。
那么有什么方法可以让我在控制台或其他地方看到字典值,即使它们已经变成 JSON 了?提前致谢。
解决方案
您可以使用此扩展将其从字典转换为 JSON,并使用它可以在控制台中打印它。
extension Dictionary {
var json: String {
let invalidJson = "Not a valid JSON"
do {
let jsonData = try JSONSerialization.data(withJSONObject: self, options: .prettyPrinted)
return String(bytes: jsonData, encoding: String.Encoding.utf8) ?? invalidJson
} catch {
return invalidJson
}
}
func printJson() {
print(json)
}
}
假设您yourDicObj
已从 JSON 解码,并且希望在控制台上解码之前将其视为 JSON
控制台中的用法:
lldb po yourDicObj.printJson
它将打印为 JSON
推荐阅读
- bash - 8 位/颜色 RGB 和 8 位颜色图之间的区别
- c++ - 为什么我的 QListWidgetItems 在到达窗口边缘之前会中断到下一行?
- c++ - 可以在具有默认值(作为可选参数)的参数中分配 const 变量吗?
- javascript - 在 JS 上使用 require 语句加载多个文件
- r - 使用 gsub(或类似方法)从向量中提取并保留列名的最后 4 位
- cloud - 阿里云能否支持 Cloud Devops 故事?
- ibm-watson - Watson Assistant 无法识别州缩写和名称
- latex - 如何在 Haddock 标记中分隔 LaTeX eqnarray 的行?
- neo4j - Neo4J - Cypher:多个节点之间的最短路径
- python - 在 python pandas 中的组内过滤