C# Hex工具类(可用于mac转化)
主要用于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转化)相关推荐
- Java集合工具类(三)-泛型集合工具类,用于便捷快速的定义、操作集合。包含Set的交集、并集......
为什么80%的码农都做不了架构师?>>> /** * 用该方法来代替 { @code new LinkedList<E>()} 方式获得新的 { @cod ...
- java stringutils api_StringUtils工具类常用api 转
该工具类是用于操作Java.lang.String类的. StringUtils类与String类的区别在于:此类是null安全的,即如果输入参数String为null,则不会抛出NullPointe ...
- Java常用工具类StringUtils的常用方法
Java常用工具类StringUtils的常用方法 1.该工具类是用于操作Java.lang.String类的. 2.StringUtils类在操作字符串是安全的,不会报空指针异常,也正因此,在操作字 ...
- Hutool Java常用工具类汇总
简介 Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以"甜甜的". Hu ...
- Android 开源控件与常用开发框架开发工具类
Android的加载动画AVLoadingIndicatorView 项目地址: https://github.com/81813780/AVLoadingIndicatorView 首先,在 bui ...
- Hutool中 常用的工具类和方法
文章目录 一.Hutool是什么? 二.安装 三.常用工具类 日期时间工具类 DateUtil 日期时间对象-DateTime 类型转换工具类 Convert 字符串工具类 StrUtil 数字处理工 ...
- 【转】 Android快速开发系列 10个常用工具类 -- 不错
原文网址:http://blog.csdn.net/lmj623565791/article/details/38965311 转载请标明出处:http://blog.csdn.net/lmj6235 ...
- 工具类的方法怎么引用_Hutool中那些常用的工具类和方法
Hutool是一个Java工具包,它帮助我们简化每一行代码,避免重复造轮子.如果你有需要用到某些工具方法的时候,不妨在Hutool里面找找,可能就有.本文将对Hutool中的常用工具类和方法进行介绍. ...
- Java字符串、文件MD5工具类
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/120874209 本文出自[赵彦军的博客] 文章目录 Hex MD5Util 其他实 ...
最新文章
- 基于suse linux系统的cacti系统部署——rpm包方式
- 三十天学不会TCP,UDP/IP网络编程-TraceRoute的哲学
- php curl title,PHP中使用CURL获取页面title例子
- 记一次vue+vuex+vue-router+axios+elementUI开发(二)
- iOS 设备的网页调试工具-Firebug
- 前端学习(312):高度塌陷
- Java Collections工具类
- PyQT5-QProgressBar
- NXP与STM32单片机程序架构
- D3基础 | 条形图
- 分析案例:贷款逾期分析
- 分享16个经典面试问题回答思路
- 计算机专业硕士毕业论文,计算机专业硕士毕业论文致谢范文
- Master HA彻底解密
- 关于基本三角函数反函数的图像问题+正切,余切
- 对于木马的一些介绍(预防木马)
- 2021起重机作业 (Q)Q3起重机械指挥模拟考试题库及软件
- e470c拆机图解全拆 thinkpad_thinkpad t470怎么样?thinkpad t470拆机图解全面评测
- 智能家居和建筑行业调研报告 - 市场现状分析与发展前景预测
- virtualbox安装虚拟机后,虚拟机不显示ip问题