2 sonnpy sonnpy 于 2016.01.30 19:53 提问

字节数据转换的高手进来,这个有组数据需要转换求高人

我有7组数据
34 35 39 36 44 41 35 32
34 35 39 36 44 41 35 32
34 37 32 46 38 45 42 36
34 33 45 35 43 41 33 44
30 30 30 30 30 30 30 30
34 30 44 39 39 39 39 41
30 30 30 30 30 30 30 30
这7组数据是是7个符点型数据,下面是数据的说明,求高人解答,到底是怎么转换,C#该怎么写转换函数
数据说明:
此处数据为以ASCII表示的16进制,即各字段都是8个字符的ASCII,需要转换为4字节的16进制浮点数数据,并进行大小尾格式转换,数据类型可定义为float

3个回答

luffychao
luffychao   2016.01.30 20:03
已采纳
sonnpy
sonnpy 虽说没解决问题 但是还是重温了下 进制之间的计算 谢谢了 问题自己也解决了
接近 2 年之前 回复
sonnpy
sonnpy   2016.01.30 22:07
        string hexString = “34 35 39 36 44 41 35 32”;
        string[] hexValuesSplit = hexString.Split(' ');
        string str = "";
        foreach (String hex in hexValuesSplit)
        {
            int value = Convert.ToInt32(hex, 16);
            string stringValue = Char.ConvertFromUtf32(value);
            str += (char)value;

        }

                    uint num = uint.Parse(str, System.Globalization.NumberStyles.AllowHexSpecifier);
        byte[] floatVals = BitConverter.GetBytes(num);
        float f = BitConverter.ToSingle(floatVals, 0);
        rtxt2.Text += f.ToString() + "\r\n";

算出来 是 4827.29

91program
91program   Ds   Rxr 2016.01.30 21:03

转换,是需要规则的
此处规则不明确啊,建议你:Bing查找:转换为4字节的16进制浮点数数据,或者查找类似的关键字。

sonnpy
sonnpy 谢谢 热心 自己想了想 已经解决了 下面会贴出来共享大家学习 这个是单片机返回数据处理
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!