gpt4 book ai didi

swift - 将 Swift 字典转换为 JSON 字符串时的 try-catch 位置

转载 作者:搜寻专家 更新时间:2023-10-31 22:20:02 27 4
gpt4 key购买 nike

这是我得到的:

        do {
try let jsonData: NSData = NSJSONSerialization.dataWithJSONObject(paramsDict, options: NSJSONWritingOptions.PrettyPrinted)
jsonString = NSString(data: jsonData, encoding: NSUTF8StringEncoding)! as String
} catch {
print("CAUGHT SOMETHING session token")
}

我收到一个错误try must be placed on the initial value expression。我试过这样“改写”:

        do {
let jsonData: NSData = NSJSONSerialization.dataWithJSONObject(paramsDict, options: NSJSONWritingOptions.PrettyPrinted)
try jsonString = NSString(data: jsonData, encoding: NSUTF8StringEncoding)! as String
} catch {
print("CAUGHT SOMETHING session token")
}

但这会导致错误Call can throw but is not marked with 'try'。我应该如何构建这个 try-catch 以及这些错误代码是什么意思?

最佳答案

您必须更改放置try 的位置。

    do {
if let jsonData: NSData = try NSJSONSerialization.dataWithJSONObject(paramsDict, options: NSJSONWritingOptions.PrettyPrinted) {
//is jsonString a variable you have previously declared?
//if not, put "if let" before it, because you are creating it IF:
//your "try" - attempt to get data from json succeeds
jsonString = NSString(data: jsonData, encoding: NSUTF8StringEncoding)! as String
}
} catch {
print("CAUGHT SOMETHING session token")
}

关于swift - 将 Swift 字典转换为 JSON 字符串时的 try-catch 位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41006236/

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