开发者社区> 问答> 正文

关于iOS swift 解析json出现乱码

{
 CI1 = 1;
 CI2 = 3;
 CI3 = 6;
 CI4 = 8;
 CI5 = 9;
 CI6 = 12;
 CN1 = "14(1)";
 CN2 = "13(1)";
 CN3 = "13(2)";
 CN4 = "13(4)";
 CN5 = "12(4)";
 CN6 = "12(1)";
 GID1 = 13;
 GID2 = 12;
 GN1 = "\U6570\U5b66";
 GN2 = "\U7269\U7406";
 KEY = CGGpLHs;
 KN = "\U963f\U65af\U8482\U82ac";
 KS = 1;
 SC = 0;
 SUP = Y;
 TN = "\U8c2d\U52b2";
 tID = 1;
 }解析的结果,原本是字符串的数据都变成了乱码,例如kn和tn的数据原本是汉字,现在都成编码了。
 使用的是这个解析方式 
 http.post(url, mapPair: dict, completionHandler: {(data: NSData?, error: NSError?) -> Void in
        if (error != nil){

        println("error=\(error!.localizedDescription)")

        }else{

             let jsonDictionary: NSDictionary = NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.MutableContainers, error: nil) as! NSDictionary

              println(data)
              println(jsonDictionary)
        }
    })

展开
收起
爵霸 2016-03-13 08:54:12 3530 0
1 条回答
写回答
取消 提交回答
  • 你直接打印一个Array或者Dictionary,如果它里面的字符串是中文,就会变成 Uxxxx 之类的编码,这是它内部存储的格式,你把值取出来之后再单独输出,它又是正常的中文了
    例如

     let kn = jsonDictionary.objectForKey("KN")
     println(kn)
    2019-07-17 19:01:40
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
手淘iOS性能优化探索 立即下载
From Java/Android to Swift iOS 立即下载
深入剖析iOS性能优化 立即下载

相关镜像