84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
如题,网上找了都是比较旧的 关于 NSPropertyListSerialization的,可是这个类库github上都找不着下载啊...
温故而知新,可以为师矣。 博客:www.ouyangke.com
API都写的很 清楚了 Use propertyListWithData:options:format:error: instead.[NSPropertyListSerialization propertyListWithData:tempData options:NSPropertyListImmutable format:NULL error:NULL];
[NSPropertyListSerialization propertyListWithData:tempData options:NSPropertyListImmutable format:NULL error:NULL];
系统库不能解决问题?
测试代码:
NSString *dataStr = @"求助~ Unicode 转 NSString"; NSString *utf8Str = [NSString replaceUnicode:dataStr]; NSLog(@" utf8Str = %@",utf8Str); NSString *unnicodeStr = [NSString utf8ToUnicode:utf8Str]; NSLog(@" unicode = %@",unnicodeStr);
运行结果:把这两个方法写到NSString分类中
//Unicode转UTF-8 + (NSString*) replaceUnicode:(NSString*)aUnicodeString { NSString *tempStr1 = [aUnicodeString stringByReplacingOccurrencesOfString:@"\u" withString:@"\U"]; NSString *tempStr2 = [tempStr1 stringByReplacingOccurrencesOfString:@"\"" withString:@"\\""]; NSString *tempStr3 = [[@"\"" stringByAppendingString:tempStr2] stringByAppendingString:@"\""]; NSData *tempData = [tempStr3 dataUsingEncoding:NSUTF8StringEncoding]; NSString* returnStr = [NSPropertyListSerialization propertyListFromData:tempData mutabilityOption:NSPropertyListImmutable format:NULL errorDescription:NULL]; return [returnStr stringByReplacingOccurrencesOfString:@"\r\n" withString:@"\n"]; } // utf8转unnicode +(NSString *) utf8ToUnicode:(NSString *)string { NSUInteger length = [string length]; NSMutableString *str = [NSMutableString stringWithCapacity:0]; for (int i = 0;i < length; i++) { unichar _char = [string characterAtIndex:i]; //判断是否为英文和数字 if (_char <= '9' && _char >= '0') { [str appendFormat:@"%@",[string substringWithRange:NSMakeRange(i, 1)]]; } else if(_char >= 'a' && _char <= 'z') { [str appendFormat:@"%@",[string substringWithRange:NSMakeRange(i, 1)]]; } else if(_char >= 'A' && _char <= 'Z') { [str appendFormat:@"%@",[string substringWithRange:NSMakeRange(i, 1)]]; } else { [str appendFormat:@"\u%x",[string characterAtIndex:i]]; } } return str; }
API都写的很 清楚了 Use propertyListWithData:options:format:error: instead.
[NSPropertyListSerialization propertyListWithData:tempData options:NSPropertyListImmutable format:NULL error:NULL];
系统库不能解决问题?
测试代码:
运行结果:
把这两个方法写到NSString分类中