![](/img/trans.png)
[英]NSArray of many NSDictionary. What is the best way to find a NSDictionary with necessary value for given key?
[英]What is the best way to print a log of object with nested NSDictionary or NSArray with decoded unicode symbols?
我寻找打印带有已解码unicode符号的NSArray和NSDictionary嵌套对象日志的最佳方法。
我知道description
属性,但是它以\\ Uxxxx格式打印unicode符号。 我也知道,可以枚举对象并单独打印其键,但是对于大型嵌套对象来说并不舒服。
例如:
NSArray *array = @[@{@"firstName":@"Марк"},@{@"lastName":@"Цекурберг"}];
NSLog(@"array %@", array);
===
array (
{
firstName = "\U041c\U0430\U0440\U043a";
},
{
lastName = "\U0426\U0435\U043a\U0443\U0440\U0431\U0435\U0440\U0433";
}
)
我想得到这个:
array (
{
firstName = "Марк";
},
{
lastName = "Цукерберг";
}
)
我为自己编写了脚本,该脚本采用对象的description
字符串并替换所有\\ Uxxxx(和%xx%xx)以优化符号,但是我认为这不是最好的方法。
这是我的Objective C脚本(NSObject扩展),它执行以下操作:
https://github.com/iOS-altima/dumpObject
标准方式:
NSArray *array = @[@{@"firstName":@"Марк%20%F0%9F%98%9C"},@{@"lastName":@"Цекурберг"}];
NSLog(@"array %@", array);
=== result ===
array (
{
firstName = "\U041c\U0430\U0440\U043a%20%F0%9F%98%9C";
},
{
lastName = "\U0426\U0435\U043a\U0443\U0440\U0431\U0435\U0440\U0433";
}
)
dumpObject的方式:
NSArray *array = @[@{@"firstName":@"Марк%20%F0%9F%98%9C"},@{@"lastName":@"Цекурберг"}];
[self dumpObject:array];
=== result ===
array (
{
firstName = "Марк 😜";
},
{
lastName = "Цукерберг";
}
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.