主要用于string 与 bytes的 十六进制互转

using System;
using System.Text;public static class HexUtils{/// <summary>/// 字符串hex转bytes 可处理Mac/// </summary>/// <param name="str">字符串</param>/// <param name="placeLength">多少位为一个hex字符串</param>/// <param name="placeholder">如果有分隔符则传入</param>/// <returns></returns>public static byte[] ToHexBytes(this string str, int placeLength = 1, string placeholder = null){string s;if (placeholder != null || !placeholder.Equals("")){s = str.Replace(placeholder, "");}else{s = str;}int l = s.Length / placeLength;byte[] hex = new byte[l];for (int i = 0; i < l; i++){hex[i] = Convert.ToByte(Convert.ToInt32(s.Substring(i * placeLength, placeLength), 16));}return hex;}/// <summary>/// bytes字节组转Hex字符串,支持定长 与 分隔符/// </summary>/// <param name="b">Hex字节组</param>/// <param name="placeLength">多少个字节为一个Hex数字</param>/// <param name="placeholder">分隔符</param>/// <returns></returns>public static string ToHexString(this byte[] b, int placeLength = 1, string placeholder=null) {string format = "{0}";bool usePlace = placeholder != null && !placeholder.Equals("");if (usePlace){format = "{0}" + placeholder; }StringBuilder sb = new StringBuilder();int l = b.Length / placeLength;byte[] cache=new byte[placeLength];for (int i = 0; i <l ; i++){for (int j = 0; j < placeLength; j++){cache[j] = b[i * placeLength + j];}sb.Append(string.Format(format, Convert.ToHexString(cache)));}if (usePlace){sb.Remove(sb.Length - 1, 1);}return sb.ToString();}}

使用方法:直接将工具类放到工程中即可直接使用,参照下面代码

using System;
using System.Text;
class Program{static void Main(string[] args){string mac = "AA-BB-CC-DD-EE-FF";byte[] b = mac.ToHexBytes(2,"-");
//          Console.WriteLine(Convert.ToHexString(b));Console.WriteLine(b.ToHexString(1,"-"));}}

C# Hex工具类(可用于mac转化)相关推荐

  1. Java集合工具类(三)-泛型集合工具类,用于便捷快速的定义、操作集合。包含Set的交集、并集......

    为什么80%的码农都做不了架构师?>>>    /**      * 用该方法来代替 { @code new LinkedList<E>()} 方式获得新的 { @cod ...

  2. java stringutils api_StringUtils工具类常用api 转

    该工具类是用于操作Java.lang.String类的. StringUtils类与String类的区别在于:此类是null安全的,即如果输入参数String为null,则不会抛出NullPointe ...

  3. Java常用工具类StringUtils的常用方法

    Java常用工具类StringUtils的常用方法 1.该工具类是用于操作Java.lang.String类的. 2.StringUtils类在操作字符串是安全的,不会报空指针异常,也正因此,在操作字 ...

  4. Hutool Java常用工具类汇总

    简介 Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以"甜甜的". Hu ...

  5. Android 开源控件与常用开发框架开发工具类

    Android的加载动画AVLoadingIndicatorView 项目地址: https://github.com/81813780/AVLoadingIndicatorView 首先,在 bui ...

  6. Hutool中 常用的工具类和方法

    文章目录 一.Hutool是什么? 二.安装 三.常用工具类 日期时间工具类 DateUtil 日期时间对象-DateTime 类型转换工具类 Convert 字符串工具类 StrUtil 数字处理工 ...

  7. 【转】 Android快速开发系列 10个常用工具类 -- 不错

    原文网址:http://blog.csdn.net/lmj623565791/article/details/38965311 转载请标明出处:http://blog.csdn.net/lmj6235 ...

  8. 工具类的方法怎么引用_Hutool中那些常用的工具类和方法

    Hutool是一个Java工具包,它帮助我们简化每一行代码,避免重复造轮子.如果你有需要用到某些工具方法的时候,不妨在Hutool里面找找,可能就有.本文将对Hutool中的常用工具类和方法进行介绍. ...

  9. Java字符串、文件MD5工具类

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/120874209 本文出自[赵彦军的博客] 文章目录 Hex MD5Util 其他实 ...

最新文章

  1. 基于suse linux系统的cacti系统部署——rpm包方式
  2. 三十天学不会TCP,UDP/IP网络编程-TraceRoute的哲学
  3. php curl title,PHP中使用CURL获取页面title例子
  4. 记一次vue+vuex+vue-router+axios+elementUI开发(二)
  5. iOS 设备的网页调试工具-Firebug
  6. 前端学习(312):高度塌陷
  7. Java Collections工具类
  8. PyQT5-QProgressBar
  9. NXP与STM32单片机程序架构
  10. D3基础 | 条形图
  11. 分析案例:贷款逾期分析
  12. 分享16个经典面试问题回答思路
  13. 计算机专业硕士毕业论文,计算机专业硕士毕业论文致谢范文
  14. Master HA彻底解密
  15. 关于基本三角函数反函数的图像问题+正切,余切
  16. 对于木马的一些介绍(预防木马)
  17. 2021起重机作业 (Q)Q3起重机械指挥模拟考试题库及软件
  18. e470c拆机图解全拆 thinkpad_thinkpad t470怎么样?thinkpad t470拆机图解全面评测
  19. 智能家居和建筑行业调研报告 - 市场现状分析与发展前景预测
  20. virtualbox安装虚拟机后,虚拟机不显示ip问题

热门文章

  1. java注册界面发送邮箱验证码(无线程版)
  2. 轻松搞定网吧记费管理系统
  3. shp转txt获取其坐标点(可批量操作)
  4. Typora+PicGo-Core+腾讯云COS 图床配置教程
  5. GoAhead2.5源代码分析之7-form请求处理(form.c)
  6. mysql MaxScale
  7. pyqt-工具栏图标大小设置
  8. [离散数学]命题逻辑P_4:命题公式和真值表
  9. 全国首例!某度起诉“文库下载神器”,索赔300万
  10. fog volume_使用FOG创建磁盘映像