C#怎么实现BitArray转换成int和string
发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,这篇"C#怎么实现BitArray转换成int和string"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下
千家信息网最后更新 2025年01月18日C#怎么实现BitArray转换成int和string
这篇"C#怎么实现BitArray转换成int和string"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"C#怎么实现BitArray转换成int和string"文章吧。
BitArray的基础可以看菜鸟编程
BitArray 类管理一个紧凑型的位值数组,它使用布尔值来表示,其中 true 表示位是开启的(1),false 表示位是关闭的(0)。
当您需要存储位,但是事先不知道位数时,则使用点阵列。您可以使用整型索引从点阵列集合中访问各项,索引从零开始。
BitArray 类的方法和属性
下表列出了 BitArray 类的一些常用的 属性:
属性 | 描述 |
---|---|
Count | 获取 BitArray 中包含的元素个数。 |
IsReadOnly | 获取一个值,表示 BitArray 是否只读。 |
Item | 获取或设置 BitArray 中指定位置的位的值。 |
Length | 获取或设置 BitArray 中的元素个数。 |
下表列出了 BitArray 类的一些常用的 方法:
序号 | 方法名 & 描述 |
---|---|
1 | public BitArray And( BitArray value ); 对当前的 BitArray 中的元素和指定的 BitArray 中的相对应的元素执行按位与操作。 |
2 | public bool Get( int index ); 获取 BitArray 中指定位置的位的值。 |
3 | public BitArray Not(); 把当前的 BitArray 中的位值反转,以便设置为 true 的元素变为 false,设置为 false 的元素变为 true。 |
4 | public BitArray Or( BitArray value ); 对当前的 BitArray 中的元素和指定的 BitArray 中的相对应的元素执行按位或操作。 |
5 | public void Set( int index, bool value ); 把 BitArray 中指定位置的位设置为指定的值。 |
6 | public void SetAll( bool value ); 把 BitArray 中的所有位设置为指定的值。 |
7 | public BitArray Xor( BitArray value ); 对当前的 BitArray 中的元素和指定的 BitArray 中的相对应的元素执行按位异或操作。 |
了解了BitArray的大概,我们来做BitArray和Int和string的转换,
BitArray转成Int方法
////// 点矩阵转成int/// public static int BitArrayToInt(BitArray bit){ int[] res = new int[1]; for (int i = 0; i < bit.Count; i++) { bit.CopyTo(res, 0); } return res[0];}
BitArray转成string方法(如果有乱码,请自行修改编码)
////// 点矩阵转换成string/// public static string BitArrayToStr(BitArray ba){ byte[] strArr = new byte[ba.Length / 8]; for (int i = 0; i < ba.Length / 8; i++) { for (int index = i * 8, m = 1; index < i * 8 + 8; index++, m *= 2) { strArr[i] += ba.Get(index) ? (byte)m : (byte)0; } } return Encoding.Default.GetString(strArr);}
在LinqPad上调用测试(Dump是LinqPad的输出的方法):
void Main(){ var bi = new BitArray(new bool[] { true, false, false, false, false, true, false, false }); bool[] bs = bi.Cast().ToArray();//直接转成bool数组,但这个结果无意义 BitArrayToInt(bi).Dump("点矩阵转成int:");//点矩阵转成int BitArrayToStr(bi).Dump("点矩阵转成字符串:");//点矩阵转成字符串 //测试将字符串转成点矩阵再转回字符串 var str = "涛神"; //点矩阵只支持bool[]、byte[]、int[],所以字符串需要先转成byte[] byte[] byteArray = System.Text.Encoding.Default.GetBytes(str); var ba = new BitArray(byteArray);//创建一个点矩阵 BitArrayToStr(ba).Dump("将点矩阵转成字符串:");//将点矩阵转成字符串}
结果:
以上就是关于"C#怎么实现BitArray转换成int和string"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。
矩阵
元素
字符
字符串
方法
内容
C#
中指
位置
属性
个数
常用
数组
文章
知识
篇文章
索引
结果
阵列
测试
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发招募合伙人
关于软件开发的专业英语单词
国际癌症研究机构基因数据库
服务器可以不设置操作系统吗
服务器定期维护的重要性
网络安全哪个技术最吃香
linux 服务器复制
公务员公安网络安全
射雕群侠传有多少服务器
开发数据库教程视频
唐山网络安全教育平台
定义动态站点及链接数据库
方舟怎么看服务器管理密码
网页软件开发教程
杭州缇苏网络技术有限公司
简单网页实现与数据库查询
wsl可以作为服务器吗
平安互联网寿险科技
网易手机版自动钓鱼机服务器
无法连接到数据源服务器
哈利波特如何搜索服务器
计算机三级网络技术参考教材
php数据库switch
服务器可以不设置操作系统吗
网络安全隐患卡通图
网络安全与防范调查问卷
服务器怎么不能从硬盘启动了
工控网络安全可信计算
内蒙古员工量化积分管理软件开发
广电网络安全播放