您的位置:首页 > 移动开发 > IOS开发

iOS NSString utf-8 Unicode互转

2015-09-17 19:28 218 查看
转自网友,收集起来,方便有需要的人。

utf-8转unicode:

-(NSString *) utf8ToUnicode:(NSString *)string
{
NSUInteger length = [string
length];

NSMutableString *s = [NSMutableStringstringWithCapacity:0];

for (int i =0;i < length; i++)
{
unichar _char = [string
characterAtIndex:i];

//判断是否为英文和数字
if (_char <=
'9' && _char >='0')
{

[s appendFormat:@"%@",[stringsubstringWithRange:NSMakeRange(i,1)]];

}
else
if(_char >='a' && _char <='z')
{

[s appendFormat:@"%@",[stringsubstringWithRange:NSMakeRange(i,1)]];

}
else
if(_char >='A' && _char <='Z')
{

[s appendFormat:@"%@",[stringsubstringWithRange:NSMakeRange(i,1)]];

}
else
{
[sappendFormat:@"\\u%x",[stringcharacterAtIndex:i]];
}
}
return s;
}

unicode转utf-8:

- (NSString*) replaceUnicode:(NSString*)aUnicodeString
{

NSString *tempStr1 = [aUnicodeStringstringByReplacingOccurrencesOfString:@"\\u"withString:@"\\U"];

NSString *tempStr2 = [tempStr1stringByReplacingOccurrencesOfString:@"\""withString:@"\\\""];

NSString *tempStr3 = [[@"\""stringByAppendingString:tempStr2]stringByAppendingString:@"\""];

NSData *tempData = [tempStr3dataUsingEncoding:NSUTF8StringEncoding];

NSString* returnStr = [NSPropertyListSerializationpropertyListFromData:tempData

mutabilityOption:NSPropertyListImmutable

format:NULL

errorDescription:NULL];

return [returnStrstringByReplacingOccurrencesOfString:@"\\r\\n"withString:@"\n"];

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: