这段代码定义了一个jsonStringToDictionary函数,它接受一个JSON字符串作为参数,并尝试将其转换为字典。如果转换成功,它将返回字典;如果失败(比如因为JSON格式不正确或解析过程中发生错误),它将返回nil。在示例使用中,我们提供了一个JSON字符串,并调用该函数来转换它,然后打印结果。
JSONSerialization.data(withJSONObject: self, options: [])else{returnnil } guard letstring= String(data: data, encoding: .utf8)else{returnnil }returnstring} } extension String {publicfunc toDictionary() ->[String : Any] {varresult =[String : Any]() guard!self.isEmptyelse{returnresult } ...
guardletjsonData=jsonString.data(using:.utf8)else{print("无法将字符串转为数据")return} 1. 2. 3. 4. 步骤3: 将 JSON 数据转成 Dictionary 现在,我们可以使用JSONSerialization将jsonData转换为字典。JSONSerialization提供了一个jsonObject(with:options:)方法: do{letjsonObject=tryJSONSerialization.jsonObje...
在这段代码中,我们首先定义了一个包含JSON数据的字符串jsonString。然后我们将这个字符串转换成Data类型的数据jsonData,并使用JSONSerialization类的jsonObject(with:options:)方法将其解析成字典类型。 使用SwiftyJSON库 除了使用原生的JSONSerialization类外,我们还可以使用第三方库来简化处理JSON数据的过程。其中一个流行...
1import Foundation2//JSON字符串转换为字典(Dictionary)3func getDictionaryFromJSONString(_ jsonString:String) ->NSDictionary{4let jsonData:Data = jsonString.data(using: .utf8)!5let dict =try?JSONSerialization.jsonObject(with: jsonData, options: .mutableContainers)6ifdict !=nil {7returndictas!NS...
funcconvertStringToDictionary(text:String)->[String:AnyObject]?{ifletdata=text.data(using:String.Encoding.utf8){do{returntryJSONSerialization.jsonObject(with:data,options:[JSONSerialization.ReadingOptions.init(rawValue:0)])as?[String:AnyObject]}catchleterrorasNSError{print(error)}}returnnil}funccon...
1.json串转字典 -(NSDictionary*)toDictionaryWithJsonString:(NSString*)jsonStr{if([jsonStr isKindOfClass:[NSDictionary class]]){return(NSDictionary*)jsonStr;}NSData*jsonData=[jsonStr dataUsingEncoding:NSUTF8StringEncoding];NSError*err;NSDictionary*resultDic=[NSJSONSerialization JSONObjectWithData:json...
Swift中字典与JSON转换的⽅法 Swift中经常会遇到字典和字符串的相互转换,因此可以转换可以封装起来,转换代码如下:func convertStringToDictionary(text: String) -> [String:AnyObject]? { if let data = text.data(using: String.Encoding.utf8) { do { return try JSONSerialization.jsonObject(with: data,...
// here "jsonData" is the dictionary encoded in JSON data } catch let error as NSError { print(error) } do { let decoded = try NSJSONSerialization.JSONObjectWithData(jsonData, options: []) as? [String:String] // here "decoded" is the dictionary decoded from JSON data } catch let...
步骤4:将解析结果转换为Dictionary 最后,我们需要将解析后的Any类型数据转换为Dictionary: ifletdictionary=jsonObjectas?[String:Any]{// 现在我们得到了一个Dictionaryprint("转换成功,Dictionary内容:\(dictionary)")} 1. 2. 3. 4. 饼状图:Swift中JSON转换的常见错误 ...