Objective-C ASCII到纯文本

时间:2010-02-10 02:07:47

标签: objective-c ascii

我正在尝试从文件中加载的ASCII数字转换为纯文本。我看过NSASCIIStringEncoding,但是当我运行它时它只返回我输入的内容。

这是我正在使用的代码:

NSData *asciiData = [[myWords objectAtIndex:d] dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *test = [[NSString alloc] initWithData:asciiData encoding:NSASCIIStringEncoding];

以下是一个例子:

ASCII字符串:117 32 119 97

预期输出:你好吗?

1 个答案:

答案 0 :(得分:2)

根据您对问题的评论,听起来您的输入文件如下所示:

65 66 67

技术上这是八个ASCII字符:数字'6'的字符,数字'5'的字符,空格''的字符等。

如果要将这些作为数字读取,然后输出它们所代表的ASCII字符,则应使用NSString的initWithContentsOfFile:读取该文件,然后使用NSScanner将这些字符序列转换为数字。然后,您可以将这些数字直接输出到文件,将它们转换为类型char,结果文件将是:

ABC

输出文件时,实际上并不需要声明数字是ASCII; ASCII是将一系列数字解释为文本的系统。这是一个ASCII文件,因为当你用文本编辑器打开它时它看起来很好。