复制
- (NSString *)utf8ToUnicode:(NSString *)string {
NSUInteger length = [string length];
NSMutableString *str = [NSMutableString stringWithCapacity:0];
for (int i = 0; i < length; i++) {
NSMutableString *s = [NSMutableString stringWithCapacity:0];
unichar _char = [string characterAtIndex:i];
if (_char <= '9' && _char >='0') {
[s appendFormat:@"%@", [string substringWithRange:NSMakeRange(i, 1)]];
}
else if(_char >='a' && _char <= 'z') {
[s appendFormat:@"%@", [string substringWithRange:NSMakeRange(i, 1)]];
}
else if(_char >='A' && _char <= 'Z') {
[s appendFormat:@"%@", [string substringWithRange:NSMakeRange(i, 1)]];
}
else {
[s appendFormat:@"\\u%x", [string characterAtIndex:i]];
if(s.length == 4) {
[s insertString:@"00" atIndex:2];
}
else if (s.length == 5) {
[s insertString:@"0" atIndex:2];
}
}
[str appendFormat:@"%@", s];
}
return str;
}
- (NSString *)replaceUnicode:(NSString *)unicodeStr {
NSString *tempStr1 = [unicodeStr 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"];
}
NSString *unicode = [self utf8ToUnicode:@"💵"];
GCLog(@"9999 == %@", unicode);
unicode = [self replaceUnicode:@"\\u0023"];
GCLog(@"9999 == %@", unicode);
NSMutableString *all_str = [[NSMutableString alloc] init];
for (NSInteger index = 0x0250; index < 0x02AF; index++) {
NSString *hex_str = [self decimalToHex:index];
hex_str = [NSString stringWithFormat:@"\\u%@", hex_str];
unicode = [self replaceUnicode:hex_str];
if (unicode && unicode.length) {
GCLog(@"9999 == %@", unicode);
[all_str appendString:unicode];
[all_str appendString:@" "];
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
2020-08-27 Apple开发_分类Category与类扩展Extension