将EBCDIC代码转换为ASCII

时间:2013-04-11 12:19:08

标签: iphone ios

有没有办法将EBCDIC代码转换为ASCII代码。

1 个答案:

答案 0 :(得分:2)

实际上有EBCDIC 037的编码 在iOS Foundation框架中。 以下示例显示了如何使用它:

// EBCDIC string  "hello!"
char ebcdicString[] = { 0x88, 0x85, 0x93, 0x93, 0x96, 0x5A, 0 };

// Convert EBCDIC to NSString:
NSStringEncoding cp037 = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingEBCDIC_CP037);
NSString *string = [[NSString alloc] initWithBytes:ebcdicString length:strlen(ebcdicString) encoding:cp037];

// Convert NSString to ASCII:
char asciiBuf[20];
if ([string getCString:asciiBuf maxLength:sizeof(asciiBuf) encoding:NSASCIIStringEncoding]) {
    printf("%s\n", asciiBuf);
} else {
    printf("conversion failed\n");
}