iOS:Convert 字符串数据到 2 字节数组并发送到 CRC

iOS:Convert string data to 2 byte array and send to CRC

我正在做基于将字符串数据转换为字节数组的应用程序,我的问题是我需要转换字符串数据并将其发送给 crc 算法以响应它在这里给出一些值我所做的代码.

Byte comm[12];
comm[0]=0x01;
comm[1]=0x14;
comm[2]=0x26;
comm[3]=0x00;
comm[4]=0x01;
comm[5]=0x01;
comm[6]=0x01;
comm[7]=0x01;
comm[8]=0x01;
comm[9]=0x01;
comm[10]=0x01;
comm[11]=0x01;

而不是从 comm[4] 到 comm[11] 的 0x01 我需要从字符串中放置数据,即

 NSString *stringsdata=@"2015010202113030";

我需要将字符串数据转换为字节格式,如下所示

 year: 2 bytes
 month: 1 byte
 date of month: 1 byte
 day of week: 1 byte
 hour: 1 byte
 minute: 1 byte
 second: 1 byte

我已经在上面的字符串中给出了整个数据,我需要将那个字符串转换为字节并放在上面的 comm[4] 到 comm[11] 中,请帮忙。

不能 100% 确定您要做什么,因为您有一个 16 字节的字符串并试图放入一个 8 字节的字符串 space。 似乎您正在尝试拆分字符串并将每 2 个字符存储为整数? 我不太确定这是否是最好的方法,但它似乎可以满足您的需要:) 我并没有真正处理这个级别的数据,所以欢迎对我所做的任何批评!

Byte comm[12];
comm[0]=0x01;
comm[1]=0x14;
comm[2]=0x26;
comm[3]=0x00;
comm[4]=0x01;
comm[5]=0x01;
comm[6]=0x01;
comm[7]=0x01;
comm[8]=0x01;
comm[9]=0x01;
comm[10]=0x01;
comm[11]=0x01;

NSString *stringsdata=@"2015010202113030";

NSInteger length = stringsdata.length;

for (int i = 0; i < length; i += 2){

    NSRange range = NSMakeRange(i, 2);
    NSString *chunk = [stringsdata substringWithRange:range];

    comm[(i/2) + 4] = [chunk intValue];

}

NSLog(@"%d", comm[4]);
NSLog(@"%d", comm[5]);
NSLog(@"%d", comm[6]);
...
...
NSLog(@"%d", comm[11]);