C#怎么实现BitArray转换成int和string
发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,这篇"C#怎么实现BitArray转换成int和string"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下
千家信息网最后更新 2025年11月08日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安全错误
数据库的锁怎样保障安全
网络安全考核评语
查询出数据库中第一条的数据
网络技术应用选修3下载
网络安全宣传有奖知识问答
计算机网络技术专业实训室
网络安全法提出建议
怎样在表格里找部分数据库
网吧服务器技术员
华为服务器自带是什么系统
h3c路由器怎么设置网络安全
nomos默认什么数据库
饥荒服务器如何暂停时间
数据库编程实训
网络安全法治视频
宁职院计算机网络技术专业
wps数据库vb错误
软件开发品名怎么写
一张手抄报关于网络安全
哪家券商服务器好
网络技术研究所招聘
华为服务器装完系统进不了系统
项目部署到服务器图片不显示
建设网络安全监测预警能力
戴尔710服务器通电自启动
小学生网络安全感言怎么写
网络安全等级保护开展工作
东莞送货单软件开发
软件开发项目验收制度
数据库表中插入新字段
2018网络安全展板内容