我希望能够获得一个字符串(例如字母@“A”),并且我想获得字节值(01000001)并将其更改为另一个字节值,例如(01000010)= B。然后转换它再次在字符串中,并在objective-c(xcode)中将字母A替换为字母B
我清楚吗?(也许不是......)感谢您的帮助。
文森特
我希望能够获得一个字符串(例如字母@“A”),并且我想获得字节值(01000001)并将其更改为另一个字节值,例如(01000010)= B。然后转换它再次在字符串中,并在objective-c(xcode)中将字母A替换为字母B
我清楚吗?(也许不是......)感谢您的帮助。
文森特
您可以使用characterAtIndex
从 NSString 中获取字符。(它会返回一个unichar
.)不过,走另一条路有点困难。
最好先getCharacters:range:
获取字符串的全部内容,然后再initWithCharacters:length:
重构 NSString。
我只有一些 Java 的背景知识,我将按如下方式解决这个问题:
String有方法length()和getCharAt(int index),可以在for块中使用,以将每个字母保存为char,例如在数组中。char可以转换为int:
字符 a = 'h';
int 测试 = (int) a;
现在您所要做的就是找到或编写一个方法changeIntegerToBinaryNumber()来获取二进制数。
要从二进制数中获取字母,应将上述步骤颠倒过来:查找/编写方法changeBinaryToInterger(),将int转换为char,可选择将char保存在一个数组中,该数组再次可以一起构建为String ...
@"foo" 实际上是一个 NSString,看看这里的类文档:
字符串是不可变的,因此您需要使用 getCString 之类的东西将它们复制到 char * 缓冲区,更改它们,然后使用 stringWithCString 创建一个新的 NSString。根据原始编码,这可能无法满足您的要求。