当前位置: 首页 > news >正文

C#二进制、十进制、十六进制数据转换

目录

1、10进制整数转二进制BOOL数组

2、二进制BOOL数组转10进制整型

3、10进制转16进制字符串

4、16进制字符串转10进制

5、16进制字符串转二进制BOOL数组

6、二进制BOOL数组转16进制字符串


1、10进制整数转二进制BOOL数组

        /// <summary>/// 10进制整数转二进制BOOL数组/// </summary>/// <param name="nData"></param>/// <returns></returns>public bool[] IntToBools(int nData){string str = Convert.ToString(nData, 2);int n = str.Length;bool[] bArray = new bool[n];if (n == 1){int temp = Convert.ToInt32(str);bArray[0] = Convert.ToBoolean(temp);}if (n > 1){for (int i = 0; i < n; i++){//char _temp = str[i];string strTemp = Convert.ToString(str[n - 1 - i]);int _temp = Convert.ToInt32(strTemp);bArray[i] = Convert.ToBoolean(_temp);}}return bArray;}

2、二进制BOOL数组转10进制整型

        /// <summary>/// 二进制BOOL数组转10进制整型/// </summary>/// <param name="bArray"></param>/// <returns></returns>public int BoolsToInt(bool[] bArray){int nNum = 0;for (int i = 0; i < bArray.Length;i++ ){int temp = 0;if(bArray[i]==true){//temp = 2 ^ i;temp = (int)Math.Pow(2, i);}nNum = nNum + temp;}return nNum;}

3、10进制转16进制字符串

         /// <summary>/// 10进制转16进制字符串/// </summary>/// <param name="nData"></param>/// <returns></returns>public string IntToHex(int nData){return nData.ToString("X");}

4、16进制字符串转10进制

        /// <summary>/// 16进制字符串转10进制/// </summary>/// <param name="strHex"><16进制字符串/param>/// <returns>int整型数据</returns>public int HexToInt(string strHex){return Convert.ToInt32(strHex, 16); // 转换为10进制整数}

5、16进制字符串转二进制BOOL数组

        /// <summary>/// 16进制字符串转二进制BOOL数组/// </summary>/// <param name="strHex"></param>/// <returns></returns>public bool[] HexToBools(string strHex){int nTemp = HexToInt(strHex);return IntToBools(nTemp);}

6、二进制BOOL数组转16进制字符串

        /// <summary>/// 二进制BOOL数组转16进制字符串/// </summary>/// <param name="bArray"></param>/// <returns></returns>public string BoolsToHex(bool[] bArray){int nTemp = BoolsToInt(bArray);return IntToHex(nTemp);}

7、封装好的类

    public class MyMathClass{/// <summary>/// 16进制字符串转二进制BOOL数组/// </summary>/// <param name="strHex"></param>/// <returns></returns>public bool[] HexToBools(string strHex){int nTemp = HexToInt(strHex);return IntToBools(nTemp);}/// <summary>/// 二进制BOOL数组转16进制字符串/// </summary>/// <param name="bArray"></param>/// <returns></returns>public string BoolsToHex(bool[] bArray){int nTemp = BoolsToInt(bArray);return IntToHex(nTemp);}/// <summary>/// 10进制整数转二进制BOOL数组/// </summary>/// <param name="nData"></param>/// <returns></returns>public bool[] IntToBools(int nData){string str = Convert.ToString(nData, 2);int n = str.Length;bool[] bArray = new bool[n];if (n == 1){int temp = Convert.ToInt32(str);bArray[0] = Convert.ToBoolean(temp);}if (n > 1){for (int i = 0; i < n; i++){//char _temp = str[i];string strTemp = Convert.ToString(str[n - 1 - i]);int _temp = Convert.ToInt32(strTemp);bArray[i] = Convert.ToBoolean(_temp);}}return bArray;}/// <summary>/// 二进制BOOL数组转10进制整型/// </summary>/// <param name="bArray"></param>/// <returns></returns>public int BoolsToInt(bool[] bArray){int nNum = 0;for (int i = 0; i < bArray.Length;i++ ){int temp = 0;if(bArray[i]==true){//temp = 2 ^ i;temp = (int)Math.Pow(2, i);}nNum = nNum + temp;}return nNum;}/// <summary>/// 16进制字符串转10进制/// </summary>/// <param name="strHex"><16进制字符串/param>/// <returns>int整型数据</returns>public int HexToInt(string strHex){return Convert.ToInt32(strHex, 16); // 转换为10进制整数}/// <summary>/// 10进制转16进制字符串/// </summary>/// <param name="nData"></param>/// <returns></returns>public string IntToHex(int nData){return nData.ToString("X");}

相关文章:

C#二进制、十进制、十六进制数据转换

目录 1、10进制整数转二进制BOOL数组 2、二进制BOOL数组转10进制整型 3、10进制转16进制字符串 4、16进制字符串转10进制 5、16进制字符串转二进制BOOL数组 6、二进制BOOL数组转16进制字符串 1、10进制整数转二进制BOOL数组 /// <summary>/// 10进制整数转二进制BO…...

晶方科技:台积电吃饱,封装迎春?

半导体产业链掀起涨价潮&#xff0c;先进封装迎接利好。 这里我们来聊国内先进封装企业——晶方科技。 近期&#xff0c;由于产能供不应求&#xff0c;台积电决定上调先进封装产品价格&#xff0c;还表示订单已经排到2026年。 大哥吃不下了&#xff0c;剩下的订单全都是空间。…...

ConcurrentModificationException

正在用Iterator迭代器循环操作的集合不能调用集合的删除方法&#xff0c;否则就会报异常&#xff1a;ConcurrentModificationException。 (调用迭代器的remove方法可以) package test;import java.io.*; import java.util.*;public class Demo {public static void main(Strin…...

倾斜摄影OSGB一键轻量化输出3dTiles!

老子云为打通OSGB应用通路&#xff0c;研发了OSGB格式一键转换3dTiles技术服务&#xff0c;通过轻量化操作即可快速实现格式间的转换&#xff0c;并且转换后模型可直接使用amrt展示框架加载、二次开发深度应用&#xff0c;此项服务已在平台上线&#xff0c;欢迎用户体验。接下来…...

深度清洁:使用npm prune命令优化你的Node.js项目

标题&#xff1a;深度清洁&#xff1a;使用npm prune命令优化你的Node.js项目 在Node.js的世界中&#xff0c;随着项目的不断扩展&#xff0c;package.json文件中的依赖项可能会变得冗余和膨胀。未使用的依赖项不仅会占用不必要的磁盘空间&#xff0c;还可能引入安全风险。幸运…...

[Gstreamer] gstbasesink 的 QOS 机制

前言&#xff1a; gstreamer里很多element都提供 QOS 机制&#xff0c;src&#xff0c;filter 和 sink 都有。Sink element 的 QOS 机制由 gstbasesink 统一提供。 qos (quality of service) 是一种评价机制&#xff0c;这个领域中都有这一概念&#xff0c;比如网络的qos。…...

关于bash脚本中extglob不生效的问题

在bash脚本中&#xff0c;我们可以通过&#xff1a; shopt -s extglob 为后续代码提供通配功能。 但如果在block中设置&#xff0c;将不会生效。如&#xff1a; if true; thenshopt -s extglob... fi这是因为&#xff1a; you cannot put shopt -s extglob inside a statement…...

idea运行报错 java: 错误: 无效的源发行版:16

1、打开File——>Project Structure——>Project&#xff1b;选择电脑安装的JDK版本。 并检查File——>Project Structure——>Modules的JDK版本...

selenium 处理网页上的弹窗

处理网页上的弹窗按钮&#xff0c;主要取决于弹窗的类型。在Web自动化测试中&#xff0c;常见的弹窗类型包括&#xff1a;JavaScript弹窗&#xff08;如alert、confirm和prompt弹窗&#xff09;和Web页面自定义弹窗&#xff08;通常是HTML元素实现的&#xff09;。以下是处理这…...

光模块市场受益于AI热潮同比增长45%,行业前景看好

近日&#xff0c;市场研究机构YOLE Group在最新的市场报告中指出&#xff0c;AI驱动的光模块市场将出现同比45%的增长。预计至2024年&#xff0c;数据通信领域的人工智能光收发器市场将实现高达45%的同比增长&#xff0c;展现出了强大的市场活力和广阔的发展前景。 光收发器市…...

qt经典界面框架

目的 其实就是一个简单的界面显示&#xff0c;是很常用的形式。 说起来简单也是简单&#xff0c;但当初&#xff0c;刚开始做时&#xff0c;感觉非常的复杂&#xff0c;不知如何下手。 现在感觉简单多了。 这个框架利用了QT的现成的MainWindow与QDockWidget&#xff0c;这样就…...

微信群聊不见了?掌握这4个技巧轻松找回,简直太爽了

微信&#xff0c;作为国内最受欢迎的社交应用之一&#xff0c;其群聊功能极大地方便了人们的工作与生活。然而&#xff0c;随着加入的群聊数量日益增多&#xff0c;如何快速找到并管理这些群聊成为了一个难题。 幸运的是&#xff0c;微信提供了一些实用的技巧&#xff0c;帮助…...

Python Type Hint有啥用

Python 的类型提示&#xff08;Type Hint&#xff09;是 Python 3.5 引入的一种静态类型检查功能。类型提示的主要目的是增强代码的可读性、可维护性和错误检测能力。虽然 Python 仍然是动态类型的语言&#xff0c;但类型提示可以帮助开发者在编码和维护过程中受益匪浅。 类型…...

【深度学习】基于因果表示学习的CITRIS模型原理和实验

1.引言 1.1.本文的主要内容 理解动态系统中的潜在因果因素&#xff0c;对于智能代理在复杂环境中进行有效推理至关重要。本文将深入介绍CITRIS&#xff0c;这是一种基于变分自编码器&#xff08;VAE&#xff09;的框架&#xff0c;它能够从时间序列图像中提取并学习因果表示&…...

CentOS9镜像下载地址加速下载

CentOS 9 是 CentOS 项目的最新版本之一&#xff0c;它基于 RHEL&#xff08;Red Hat Enterprise Linux&#xff09;9 的源代码构建。CentOS&#xff08;Community ENTerprise Operating System&#xff09;是一个免费的企业级 Linux 发行版&#xff0c;旨在提供一个与 RHEL 兼…...

GPT-5:博士级智能的跨越——未来已来,人机共生的新篇章

在这个科技日新月异的时代&#xff0c;每一次技术的飞跃都预示着人类文明向前迈出的一大步。随着人工智能&#xff08;AI&#xff09;领域的持续突破&#xff0c;我们正站在一个前所未有的转折点上&#xff0c;而CPT&#xff08;假设的模型系列代号&#xff0c;对应GPT&#xf…...

陶建辉入选 2023 年度“中国物联网行业卓越人物榜”

在这个技术飞速发展的时代&#xff0c;物联网行业作为推动社会进步的重要力量&#xff0c;正在不断地演化和革新。近日&#xff0c;中国智联网生态大会暨“2023 物联之星”年度榜单颁奖典礼在上海浦东举行。现场公布了拥有物联网行业奥斯卡奖之称的 ——“物联之星 2023 中国物…...

2024南京国际自有品牌产品博览会

展会名称&#xff1a;2024南京国际自有品牌产品博览会 展会时间&#xff1a;2024年10月11-13日 展会地点&#xff1a;南京国际博览中心 展览规模&#xff1a;36000平米 详询主办方陆先生 I38&#xff08;前三位&#xff09; I82I&#xff08;中间四位&#xff09; 9I72&…...

网络安全入门教程(非常详细)从零基础入门到精通,看完这一篇你就是网络安全高手了。

关于我 我算是“入行”不久的一个新人安全工作者&#xff0c;为什么是引号呢&#xff0c;因为我是个“半个野路子”出身。早在13年的时候&#xff0c;我在初中时期就已经在90sec、wooyun等社区一直学习、报告漏洞。后来由于升学的压力&#xff0c;我逐渐淡出了安全圈子&#x…...

四步轻松搞定!探索字节最新AnimateDiff-Lightning:高质量视频生成的秘密武器!

字节前脚刚发布了文生图大模型 SDXL-Lightning&#xff0c;后脚就又对文生视频领域下手了。 就在这几天又推出了文生视频模型&#xff1a;AnimateDiff-Lightning&#xff0c;它是一种快速的文本到视频生成模型。它生成视频的速度比原始 AnimateDiff 快十倍以上&#xff0c;只需…...

java_网络服务相关_gateway_nacos_feign区别联系

1. spring-cloud-starter-gateway 作用&#xff1a;作为微服务架构的网关&#xff0c;统一入口&#xff0c;处理所有外部请求。 核心能力&#xff1a; 路由转发&#xff08;基于路径、服务名等&#xff09;过滤器&#xff08;鉴权、限流、日志、Header 处理&#xff09;支持负…...

椭圆曲线密码学(ECC)

一、ECC算法概述 椭圆曲线密码学&#xff08;Elliptic Curve Cryptography&#xff09;是基于椭圆曲线数学理论的公钥密码系统&#xff0c;由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA&#xff0c;ECC在相同安全强度下密钥更短&#xff08;256位ECC ≈ 3072位RSA…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

HTML 列表、表格、表单

1 列表标签 作用&#xff1a;布局内容排列整齐的区域 列表分类&#xff1a;无序列表、有序列表、定义列表。 例如&#xff1a; 1.1 无序列表 标签&#xff1a;ul 嵌套 li&#xff0c;ul是无序列表&#xff0c;li是列表条目。 注意事项&#xff1a; ul 标签里面只能包裹 li…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)

文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

安卓基础(aar)

重新设置java21的环境&#xff0c;临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的&#xff1a; MyApp/ ├── app/ …...

DingDing机器人群消息推送

文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人&#xff0c;点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置&#xff0c;详见说明文档 成功后&#xff0c;记录Webhook 2 API文档说明 点击设置说明 查看自…...

【C++进阶篇】智能指针

C内存管理终极指南&#xff1a;智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...

Rust 开发环境搭建

环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行&#xff1a; rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu ​ 2、Hello World fn main() { println…...

WPF八大法则:告别模态窗口卡顿

⚙️ 核心问题&#xff1a;阻塞式模态窗口的缺陷 原始代码中ShowDialog()会阻塞UI线程&#xff0c;导致后续逻辑无法执行&#xff1a; var result modalWindow.ShowDialog(); // 线程阻塞 ProcessResult(result); // 必须等待窗口关闭根本问题&#xff1a…...