首页 > 其他分享 >通讯过程中16进制字符和byte[]/十进制和16进制转换(一)

通讯过程中16进制字符和byte[]/十进制和16进制转换(一)

时间:2024-09-29 17:22:45浏览次数:1  
标签:进制 16 bytes str byte string

        /// <summary>
        /// 16进制字符转为字节流
        /// </summary>
        /// <param name="str"></param>
        /// <param name="fromBase"></param>
        /// <returns></returns>
        public static byte[] HexStringToByte(string str, int fromBase = 16)
        {
            str = str.Replace(" ", "");
            if ((str.Length % 2) != 0)
                str += "";
            byte[] bytes = new byte[str.Length / 2];
            for (int i = 0; i < bytes.Length; i++)
            {
                bytes[i] = Convert.ToByte(str.Substring(i * 2, 2), fromBase);
            }
            return bytes;
        }

       /// <summary>
       /// 整数转为16进制字符
       /// </summary>
       /// <param name="i"></param>
       /// <returns></returns>
       public static string Int16ToHexStr(Int16 i)
        {
            string fStr = "";
            fStr = PLC.Core.ByteToHexStr(BitConverter.GetBytes(i));
            return fStr;

        }
       /// <summary>
       /// 单浮点数转为16进制字符
       /// </summary>
       /// <param name="f"></param>
       /// <returns></returns>
        public static string FloatToHexStr(float f)
        {
            string fStr = "";
            fStr = PLC.Core.ByteToHexStr(BitConverter.GetBytes(f));
            return fStr;

        }
        /// <summary>
        /// 字节数组转16进制字符串
        /// </summary>
        /// <param name="bytes"></param>
        /// <returns></returns>
        static string ByteToHexStr(byte[] bytes)
        {
            string returnStr = "";
            if (bytes != null)
            {
                for (int i = 0; i < bytes.Length; i++)
                {
                    returnStr += bytes[i].ToString("X2");
                }
            }
            return returnStr;
        }

        /// <summary>
        /// 一个字节前后两位对调
        /// </summary>
        /// <param name="inputStr"></param>
        /// <returns></returns>
        public static string Start2ToEnd2(string inputHexStr)
        {
            string str = "";
            str = inputHexStr.Substring(2, 2) + inputHexStr.Substring(0, 2);
            return str;
        }

 

标签:进制,16,bytes,str,byte,string
From: https://www.cnblogs.com/echo-efun/p/18436937

相关文章

  • 16.微服务hystrix解析部署使用全流程
    目录1、什么是hystrix?2、Hystrix作用3、Hystrix使用场景4、准备工作5、应用1、引入依赖2、开启Hystrix3、添加熔断6、添加仪表盘【了解,功能单一使用少】添加依赖添加配置类HystrixConfig启动项目,访问如下地址​编辑注意:1、什么是hystrix?是一个做熔断的框架......
  • CF1648D Serious Business题解
    题目链接关键:DP状态的设计\(dp[i]\)表示走到\((2,i)\)的最小价值。转移分类讨论只用一个区间\(i\)从\([li,x]\)选择位置向下拐\(dp[i]=max_{li\lek\lex}(sum[1][k]+sum[2][x]-sum[2][k-1]+v[i])\)使用别的区间显然转移点小于\(li\),不然用一个区间即可。\(dp[i]=max_......
  • 【python】进制转换
    defbinary_to_octal(binary_str):decimal=int(binary_str,2)returnoct(decimal)[2:]#去掉'0o'前缀defbinary_to_decimal(binary_str):returnint(binary_str,2)defbinary_to_hexadecimal(binary_str):decimal=int(binary_str,2......
  • 推出TMS320VC5416GWS120、TMS320VC5416PGE160、TMS320VC5416ZWS160定点数字信号处理器
    系列概述:TMS320VC5416定点数字信号处理器(DSP)基于先进的改进型哈佛架构打造,具有一条程序存储器总线和三条数据存储器总线。该处理器采用具有高并行能力的算术逻辑单元(ALU)、特定于应用的硬件逻辑、片上存储器和附加片上外设。高度专业化的指令集是TMS320VC5416操作灵活性和速度的基......
  • 代码随想录算法训练营Day16 | 513.找树左下角的值、112.路径总和、113.路径总和Ⅱ、10
    目录513.找树左下角的值112.路径总和113.路径总和Ⅱ106.从中序与后序遍历序列构造二叉树105.从前序与中序遍历序列构造二叉树513.找树左下角的值题目513.找树左下角的值-力扣(LeetCode)给定一个二叉树的根节点root,请找出该二叉树的最底层最左边节点的值。假......
  • 基于Java&MYSQL&Android的商品比价软件设计与实现20516-计算机毕设定制原创选题推荐(附
                                                 目 录摘要1绪论1.1开发背景1.2研究现状1.3论文结构与章节安排2 商品比价软件APP系统分析2.1可行性分析2.2......
  • 力扣刷题——2516. 每种字符至少取 K 个
    一开始想的很简单,觉得在数组两端维护两个下标,用贪心的方法模拟取数字。classSolution{public:inttakeCharacters(strings,intk){intleft=0,right=s.size()-1;if(k==0)return0;intres=0;vector<int>......
  • 2516. 每种字符至少取 K 个
    给你一个由字符'a'、'b'、'c'组成的字符串s和一个非负整数k。每分钟,你可以选择取走s最左侧还是最右侧的那个字符。你必须取走每种字符至少k个,返回需要的最少分钟数;如果无法取到,则返回-1。示例1:输入:s="aabaaaacaabc",k=2输出:8解释:从s的左侧取三个......
  • 洛谷 P1672
    前缀和降低区间和查询问题的时间复杂度,分一维和二维一种数据预处理手段,一般配合其他算法查分、二分搜索二分:容斥原理。sum[i][j]=sum[i-1][j]+sum[i][j-1]-sum[i-1][j-1]+a[i][j];差分前缀和相对的策略,可当做求和的逆运算a[l]++;a[r+1]--;洛谷P1672......
  • 2024-2025-1 20241316 《计算机基础与程序设计》第一周学习总结
    2024-2025-120241316《计算机基础与程序设计》第一周学习总结作业信息这个作业属于哪个课程2024-2025-1-计算机基础与程序设计这个作业要求在哪里2024-2025-1计算机基础与程序设计第一周作业这个作业的目标<浏览教材并提出问题>作业正文https://www.cnblog......