zoukankan      html  css  js  c++  java
  • 二进制样式的字符串与byte数组互转函数示例

    开发时用到的方法,记录下:

        /// <summary>
        /// 测试方法 
        /// </summary>
        private void TestFun()
        {
            Response.Write("=================<p>");
    
            var b = BinaryStr2ByteArray("10011010010");
            var str = ByteArray2BinaryStr(b);
            str = str.TrimStart('0');
            Response.Write(str);

    Response.Write("<p>================="); Response.End(); } /// <summary> /// 二进制样式的字符串转byte数组 /// </summary> /// <param name="binaryStr">二进制样式的字符串</param> /// <returns></returns> private byte[] BinaryStr2ByteArray(string binaryStr) { if (string.IsNullOrEmpty(binaryStr)) binaryStr = string.Empty; List<byte> byte_List = new List<byte>(); var strL = binaryStr.Length; if (strL == 0) byte_List.Add(0); else if (strL > 0 && strL <= 4) byte_List.Add(Convert.ToByte(binaryStr, 2)); else { var tempStr = string.Empty; for (var i = strL; i > 0; i = i - 4) { if (i - 4 > 0) tempStr = binaryStr.Substring(i - 4, 4); else tempStr = binaryStr.Substring(0, i); byte_List.Add(Convert.ToByte(tempStr, 2)); } } byte_List.Reverse(); return byte_List.ToArray(); } /// <summary> /// byte数组转二进制样式的字符串 /// </summary> /// <param name="byteArr">byte数组</param> /// <returns></returns> private string ByteArray2BinaryStr(byte[] byteArr) { List<string> strList = new List<string>(); var bl = byteArr.Length; if (bl == 0) return ""; else { var tempStr = string.Empty; for (var i = 0; i < bl; i++) { tempStr = Convert.ToString(byteArr[i], 2); if (tempStr.Length < 4) tempStr = tempStr.PadLeft(4, '0'); strList.Add(tempStr); } } return string.Join("", strList.ToArray()); } } }
  • 相关阅读:
    亲测——pycharm下运行第一个scrapy项目 ©seven_clear
    [转]pycharm的一些快捷键
    一个豆瓣API的使用——拒绝思维定式
    小试牛刀--利用豆瓣API爬取豆瓣电影top250
    Python GUI编程--Tkinter
    多线程详解
    K8S+GitLab-自动化分布式部署ASP.NET Core(一) 部署环境
    初学者浅度剖析eShopOnContainers 里面用到的MediatR .
    通过Task异步加快对数组的运算
    为什么是容器?
  • 原文地址:https://www.cnblogs.com/Sandheart/p/6517795.html
Copyright © 2011-2022 走看看