繁体   English   中英

iOS将字符串编码为unicode

[英]iOS encode string to unicode

我有一个字符串,都有英文字母和日文字符。 我需要在将数据传输到服务器之前将日语字符转换为Unicode。 我发现很多主题转换为UTF-8,但在转换为Unicode时我没有找到任何东西。

旁注:我还注意到,如果我将字符串放在数组中并使用NSLog打印数组,则日文文本将以Unicode格式打印。

NSString *data = @"aさ";
NSArray *array = [NSArray arrayWithObjects: data, other data..., nil];
NSLog(@"%@", array);

这将打印出:“a \\ U3055”表示我在数组中的字符串数据。

NSData *dataenc = [data dataUsingEncoding:NSNonLossyASCIIStringEncoding];
NSString *encodevalue = [[NSString alloc]initWithData:dataenc encoding:NSUTF8StringEncoding];
-(NSString *)StringWithData:(NSString *)Encoded {

NSString *decoded = (__bridge_transfer NSString *)CFURLCreateStringByReplacingPercentEscapesUsingEncoding(NULL, (CFStringRef)Encoded, CFSTR(""), kCFStringEncodingUTF8);
return [decoded stringByReplacingOccurrencesOfString:@"+" withString:@" "];
}

- (NSString *)EncodceStringWithData:(NSString *)Encoded {

NSString *urlEncoded = (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes( NULL, (CFStringRef)Encoded, NULL, (CFStringRef)@"!*'\"();:@&=+$,/?%#[]% ", kCFStringEncodingUTF8));
return [urlEncoded stringByReplacingOccurrencesOfString:@"%20" withString:@"+"];
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM