84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
Wie der Titel schon sagt, habe ich online relativ alte zu NSPropertyListSerialization gefunden, aber ich kann diese Klassenbibliothek nicht zum Herunterladen auf Github finden...
温故而知新,可以为师矣。 博客: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分类中