json - Swift 5:如何从 NSSingleObjectArray 获取数据?
问题描述
我正在从 Google Translator API 获取数据。我不确定如何访问描述?
我所有的尝试都失败了,请帮忙
let json = try JSONSerialization.jsonObject(with: data, options: [])
var data = json as! [String: Any]
data = data["data"] as! [String:Any]
print(data!)
我在控制台中获取:
["translations": <__NSSingleObjectArrayI 0x600002837350>(
{
detectedSourceLanguage = en;
translatedText = "\U0420\U0430\U0431\U043e\U0442\U0430";
}
)
]
引用我的代码,我只是在学习,如果有办法在不使用结构的情况下解析这个 json,请告诉我。我认为在这种情况下使用结构是不合理的,因为 json 响应很小,我只需要获取 2 个参数,对吗?
解决方案
这是工作代码:
let json = try JSONSerialization.jsonObject(with: data, options: [])
var data = json as! [String: Any]
data = data["data"]! as! [String:Any]
let translations = data["translations"] as? [[String: String]]
let firstTranslation = translations?.first
let translated = firstTranslation!["translatedText"]
print(translated)
推荐阅读
- sql - SQL Hive 根据列值添加列
- sql - FOR XML 路径有问题 - 没有连接
- ruby-on-rails - 细长的多行字符串
- android - 如何在没有接收方Intent的组件类的情况下处理createChooser的IntentSender
- spring - HikariCP 使用 Spring Cloud Config 重启
- javascript - 无法在 Firebase 上上传数据?
- python - 如何读取 zip 文本文件?
- ios - fade swipeAction 动画完成后如何重新加载 tableview 数据
- mongodb - mongoexport 工具有没有办法以 .net 编码导出 guid?
- angular - 如何访问资产文件夹中的图像文件?[角7]