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]);
我正在做基于将字符串数据转换为字节数组的应用程序,我的问题是我需要转换字符串数据并将其发送给 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]);