iOS从UTF8到ISO-8859-1

时间:2017-07-11 03:59:59

标签: ios objective-c utf-8

在Java代码中,此代码可以获取十六进制字符串"efbfbc";

new String((((char)-4 )+ "").getBytes("utf8"),"iso8859-1")

如何在iOS Objective-C中实现它?

按字节-4,获取十六进制字符串"efbfbc";

2 个答案:

答案 0 :(得分:0)

NSString *string = @"efbfbc";
char converted[([string length] + 1)];
NSString* str = [[NSString alloc]
                 initWithCString: converted encoding: NSISOLatin1StringEncoding];

NSLog(@"Your result string: %@",str);

我得到了以下结果:

enter image description here

有关 intiWithCString 方法的详细信息,请查看此AppleDoc。它会给你一个清晰的想法。

答案 1 :(得分:0)

我已经解决了这个问题。

unichar asciiChar = -4;
NSString *string  = [NSString stringWithCharacters:&asciiChar length:1];
 string = [NSString stringWithCString:[string UTF8String] encoding: NSISOLatin1StringEncoding];

现在,字符串hex是“efbfbc”

谢谢大家。