将数据字符串转换为UTF8的问题

时间:2016-07-15 10:17:59

标签: ios iphone json swift

我正在使用JSON获取一些数据,但是当我获得数据时name的数据是这样的:

{
    code = 200;
    found = 1;
    name = "\\u0635\\u0641\\u062d\\u0647 \\u0631\\u0633\\u0645\\u06cc \\u0633\\u0627\\u06cc\\u062a \\u0648\\u0631\\u0632\\u0634 \\u06f3";
}

如何解决?我试图将其转换为UTF8编码,但仍然没有!我不得不说这个URL在使用UTF8编码的Safari中运行良好

这是我的代码:

   let userURL: String = "https://myurl.com/xxx"
        let ut8 = userURL.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet())

        NSURLSession.sharedSession().dataTaskWithURL(NSURL(string:ut8!)!, completionHandler: { (data, response, error) -> Void in
            // Check if data was received successfully
            if error == nil && data != nil {
                do {
                    if let jsonResult = try NSJSONSerialization.JSONObjectWithData(data!, options: []) as? NSDictionary {
                       print(jsonResult)
    }

.....
}
  

解决问题:服务器出现问题,现已修复

2 个答案:

答案 0 :(得分:0)

这就是print方法输出的内容,它有时会出现编码问题。在UI中渲染这些文本时应该没问题。

答案 1 :(得分:0)

将数据字符串转换为Swift中的UTF8字符串

yourNSStringObject.utf8

要在Objective C中将数据字符串转换为UTF8字符串,请使用

[yourNSStringObject UTF8String];