zoukankan      html  css  js  c++  java
  • C#基础数据类型与字节数组(内存中的数据格式)相互转换(BitConverter 类)

     

    在某种通讯协议中(如 Modbus),可能需要把一些基本的数据类型内存中的表示形式转换成以字节数组的形式,方便传送。C/C++中可以利用指针等操作完成,但C#中没有指针,咋办呢?可以用BitConverter类啊。

    1,把double类型转换成byte数组,float类型的话,在1234.5678后加个F就行了,即1234.5678F

    代码:

    private void button1_Click(object sender, EventArgs e)
    {
        byte[] byteArray;
        byteArray = BitConverter.GetBytes(1234.5678);
        MessageBox.Show(BitConverter.ToString(byteArray));
    
    }

    运行结果:

    tmp76

    2,把byte数组转换成double类型

    代码:

    private void button2_Click(object sender, EventArgs e)
    {
        byte [] bb = new byte [8];
     
        bb[0] = 0xAD;
        bb[1] = 0xFA;
        bb[2] = 0x5C;
        bb[3] = 0x6D;
        bb[4] = 0x45;
        bb[5] = 0x4A;
        bb[6] = 0x93;
        bb[7] = 0x40;
    
        double i = BitConverter.ToDouble(bb, 0);
        MessageBox.Show(i.ToString());
    }

    结果:

    tmp7A

  • 相关阅读:
    HTML框架
    HTML链接
    kzalloc 函数详解(转载)
    LCD接口(转载)
    S3C2440上RTC时钟驱动开发实例讲解(转载)
    PHP 真值与空值
    http chunked 理解
    c# 基础
    美式音标注意事项
    groovy 闭包
  • 原文地址:https://www.cnblogs.com/ysz12300/p/5283325.html
Copyright © 2011-2022 走看看