我们常常需要使用NSLog在控制台输出内容查看一些结果是否正确或者获取信息等。但是由于中文编码格式的问题,直接输出json数据时中文总会以原始码文显示,而不是正常显示中文,之前搜索方法时找到如下方法:
在Xcode上方运行和结束运行右边选择模拟器的地方选择工程名-->Edit Scheme-->test-->更改Debugger的格式。
但是我的Xcode只有LLDB和NONE可以选择,始终无法正常显示中文,只能另寻他法。
我们获取json数据的时候,一般会直接转成NSDictionary的格式,或者就原有的json数据也可以,使用如下代码:
// json数据或者NSDictionary转为NSData,responseObject为json数据或者NSDictionary
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:responseObject options:NSJSONWritingPrettyPrinted error:nil];
// NSData转为NSString
NSString *jsonStr = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
NSLog(@"%@", jsonStr);
这样输出的就是正常中文显示的了,也就是用UTF8编码后的结果。
另外介绍一个方便查看json数据的软件:VisualJSON。
直接在Mac App Store下载即可,免费的,很好用,直接把json数据,或者上面转化后的NSString粘贴放在Content区域里,下方的Text就会显示便于查看结构的json数据。
这是其在github的项目地址:
https://github.com/youknowone/VisualJSON
1.客户端
JSON
对象和字符串之间的转换和引用(JavaScript):
从官网下载:
json
.js,放在/js目录下
里面提供了一些JAVASCRIPT函数实现
JSON
Object 和
Json
Text之间的相互转换。
它里面虽然代码众多,但是供外界调用的也只有两个函数――一个编码...
将字典(NSDictionary)和数组(NSArray)打印的Log显示为
Json
格式,可以解决
Xcode
打印字典和数组时
中文
显示
乱码
问题。
* 完美解决字典和数组调试打印时
中文
显示
乱码
问题,
* 使用
JSON
格式打印,可以通过
JSON
格式化验证
* 缩进格式显示,层次清晰
* 使用po命令调试时也能生效
* DEBUG模式生效,不影响线上版本
* 兼容
iOS
8及以上版本(
iOS
8以下没有测试过)
话不多说,直接将github仓库(https://github.com/shix.
- (NSString *)descriptionWithLocale:(id)locale
NSMutableString *str = [NSMutableString string];
[str append...
第一步:设置idea的编码格式
idea 安装目录下/bin/idea.exe.vmoptions 和/bin/idea64.exe.vmoptions 下添加-Dfile.encoding=utf-8 保证idea的java 虚拟机环境时utf-8编码
第二步:统一设置我们代码的编码...
显示
乱码
的主要原因是因为
中文
在代码中的编码与
控制台
的编码不一致,比如代码文件的编码方式是GB2312(即GBK),而
控制台
编码是UTF-8时,
输出
中文
就会产生
乱码
从网上搜了一些关于怎么解决
乱码
问题的帖子或者blog,主要有以下几种方式,各人情况不一样,可参考
由于
Xcode
的
控制台
对
中文
的兼容一直有问题,所以以前显示数组或者字典(里面包含
中文
)
后来经过一段时间的折磨,发现还是不能忍受这种打印(\U6570) ,鬼知道这是个什么字后来经过自己一番研究,于是有了下面的东西
github:LogChinese,记得给一个 star
查了两天 都说处理response 不过我搭建的框架里没有response(至少表面上没有)
然后拼接了一个String作为
json
传递到前台 但是遇到
中文
前台就显示“?”
试过很多办法 都不能解决 最后放弃了字符串拼接 改为对象传递
结果成功了
controller对应方法
@RequestMapping(params = "demo")
@ResponseBo
找到“Show File Inspector”所在位置,单击。
在跳出的窗口中找到"Text Encoding",从下拉菜单中选择“Simplified Chinese (GB XXXX)”
选择“Reinterpret”
查看
代码中是否已经能够显示
中文
回到"Text Encoding",从下拉菜单中选择“Unicode (UTF...
AFNetworking 是一个著名的
iOS
和 macOS 网络开发库。使用 AFNetworking 发送 GET 请求并获取
JSON
数据
的基本流程如下:
1. 导入 AFNetworking 库:在你的
Xcode
项目中,使用 Cocoapods 或者手动将 AFNetworking 库导入到你的项目中。
2. 创建 AFHTTPSessionManager 对象:AFHTTPSessionManager 是 AFNetworking 中用于发送 HTTP 请求的主要类。你可以使用如下代码来创建 AFHTTPSessionManager 对象:
```objective-c
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
3. 设置响应序列化器:AFNetworking 可以自动将服务器返回的
数据
转换为常用的
数据
类型,例如
JSON
、XML 等。你可以使用如下代码来设置响应序列化器:
```objective-c
manager.responseSerializer = [AF
JSON
ResponseSerializer serializer];
4. 发送 GET 请求:你可以使用 AFHTTPSessionManager 的 GET 方法来发送 GET 请求。例如,你可以使用如下代码来发送 GET 请求:
```objective-c
NSString *URLString = @"http://example.com/api/get_data";
[manager GET:URLString parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
// 请求成功,responseObject 即为服务器返回的
JSON
数据
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
// 请求失败
在 success 块中,你可以处理服务器返回的
JSON
数据
。
希望以上信息对你有帮
零基础使用Python读写处理Excel表格
Arodex:
终端命令查看TensorFlow版本号及路径
weixin_40136627:
用SRGAN提升图片清晰度(TensorFlow)
qq_36833954: