gpt4 book ai didi

swift - 如何将json转成String数组

转载 作者:搜寻专家 更新时间:2023-11-01 06:24:57 24 4
gpt4 key购买 nike

大家好,我是 Swift 的新手,我正在尝试制作一个简单的应用程序。

应用程序以 JSON 格式从服务器获取数据。

func addLangList(completion: @escaping ([String], [String]) -> Void) {

let request = NetworkRequest()
let reqUrl = NetworkInformation.serverAddr + "/word/purpose"
let parameters: Parameters = ["category": "lang"]
request.sendGetRequest(url: reqUrl, parameters: parameters, success: { (response) in

let json = JSON(response)
let isSuccess = json[ServerResponseKey.KEY_RESULT]


if isSuccess == true {

var resultMessage:JSON = json[ServerResponseKey.KEY_MESSAGE]

let lang = resultMessage["lang"].arrayValue
let purpose = resultMessage["purpose"].arrayValue


completion(lang, purpose)
}

}, fail: request.CommonNetworkFailureHandler)
}

通过使用Swiftyjson,该函数将接收到的数据转换成JSON格式。在闭包内部,调用者调用“完成”以进行进一步处理。 'completion(lang, purpose) 时发生错误。 Xcode 说

" Cannot convert value of type '[JSON]' to expected argument type '[String]'".

错误,我猜是因为 .arrayValue 没有将 resultMessage["lang"] 更改为 [String] 类型。 ..任何人都可以给我一些建议吗??

最佳答案

那两个数组

let lang = resultMessage["lang"].array
let purpose = resultMessage["purpose"].array

JSON 类型,不是 String ,你需要转换它们

let langStr = lang.map { $0.string }
let purposeStr = purpose.map { $0.string }

关于swift - 如何将json转成String数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57745746/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com