iOS开发 Tips 3

1、构造指定内容的NSData

如果我们要构造一个data,要求其内容如下:
<ef000202 0d0d4738 32313437 30009198 2c08d915 f313081d 0e2f2d00 04260100 010000ee>
此时我们可以采用Byte来设置data的内容,比如我们这一条data是72位16进制的data,而Byte表示字节;众所周知:

1 字节 = 8位2进制 --> 1字节 = 2位16进制

现在,我们来构建一个Byte

//声明一个变量`bytes`,`bytes`所指的内存,存放的是36个Byte
//36个Byte = 36 * 8位二进制 = 36 * 2位十六进制
Byte bytes[36] = {};

然后逐个往bytes中写入数据,注意不要超出36个元素

    int i = 0;
    bytes[i++] = (Byte)0xef;
    bytes[i++] = (Byte)0x00;
    bytes[i++] = (Byte)0x02;
    bytes[i++] = (Byte)0x02;
    bytes[i++] = (Byte)0x0d;
    ...

实际上,很多时候,我们是不能像上面那样把数值定死的,比如说日期,是不断变化的,我们可以采用下面的方法来操作:

    //年月日
    bytes[i++] = yearInt & 0xFF;
    bytes[i++] = monthInt & 0xFF;
    bytes[i++] = dayInt & 0xFF;
    //时分秒
    bytes[i++] = hourInt & 0xFF;
    bytes[i++] = minutesInt & 0xFF;
    bytes[i++] = secondsInt & 0xFF;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,887评论 1 32
  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 8,033评论 2 9
  • iPhone的标准推荐是CFNetwork 库编程,其封装好的开源库是 cocoa AsyncSocket库,用它...
    Ethan_Struggle阅读 6,765评论 2 12
  • iOS开发系列--网络开发 概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博、微信等,这些应用本身可...
    lichengjin阅读 9,228评论 2 7
  • 我是一个女孩子,都说女孩子是恋家的,男孩子应该出去奋斗,可我偏偏不信(之前)。可现在我信了百分之一万的信了。...
    梦千儿阅读 1,787评论 2 2

友情链接更多精彩内容