这是代码 - >
NSString* message = @"username,password";
NSMutableData *data = [[NSMutableData alloc] initWithData:
[message dataUsingEncoding:NSASCIIStringEncoding]];
[data appendBytes:"0x1""0x1""0x0"
length:3];
我期待输出 - >用户名,password110
但没有得到这个。
答案 0 :(得分:2)
您要附加的内容不是字节,而是字符串"0x10x10x0"
。前三个字符会被追加 - 具体来说,'0'
,'x'
和'1'
。
要附加三个字节,请创建一个字节数组,然后附加它:
unsigned char suffixBytes[] = {1, 1, 0};
[data appendBytes:suffixBytes length:3];
在一个特定情况下,当所有字节代表可打印字符的字符代码时,您可以改为使用字符串文字:
[data appendBytes:"110" length:3];
这会将'1'
,'1'
和'0'
的字符代码附加到您的数据中。假设ASCII编码,值为{0x31, 0x31, 0x30}
。