在十六进制字符串与数值类型之间转换

1.获取‘字符串’中的每个字符的十六进制值。

2.获取与十六进制字符串中的每个值对应的字符。、

3.将十六进制string转换为整形。

4.将十六进制string转换为浮点型。

5.将字节数组转换为十六进制string。

 

此案例输入中的每个字符的是十六进制值。先将string分析为字符数组,然后对每个字符调用Inter32(char)以获取相应的数字值。

复制代码
static void Main(string[] args)
        {
            string input = "Hello World!";
            char[] values = input.ToCharArray();
            foreach(char letter in values){
                int value = Convert.ToInt32(letter);
                string hexoutput = string.Format("{0:X}",value); //0 表示占位符    x或X表示十六进制  12345.ToString("x"); //生成 3039 (16进制) 
                Console.WriteLine("Hexadecimal value of{0} is {1}", letter, hexoutput);
            }
        }

//扩展:
//12345.ToString("n"); //生成 12,345.00
//12345.ToString("C"); //生成 ¥12,345.00
//12345.ToString("e"); //生成 1.234500e+004
//12345.ToString("f4"); //生成 12345.0000
//12345.ToString("x"); //生成 3039 (16进制)
//12345.ToString("p"); //生成 1,234,500.00%

复制代码

 

案例分析十六进制值的string对应输出对应的字符。首先将split(char[])方法以获取每个十六进制作为数组中的单个string。然后调用ToInt32(string,int32)以将十六进制转换为表示为int的十进制值。第一种方式使用ConvertFromUtf32(int32),它将对应于整型的字符作为string返回。第二种方法是将int显示转换为char

复制代码
string hexValues="48 65 6C 6C 6F 20 57 6F 72 6C 64 21";
            string[] hexvaluesplit=hexValues.Split(' ');
            foreach(string hex in hexvaluesplit)
            {
                int value=Convert.ToInt32(hex,16);
                string stringvalue = char.ConvertFromUtf32(value);
                char charValue = (char)value;
                Console.WriteLine("hexadecimal value = {0}, int value = {1}, char value = {2} or {3}",
                        hex, value, stringvalue, charValue);
            }
复制代码

 

案例演示了将十六进制string转换为整数的另一种方法,即调用Int32.Parse(String,NumberStyles)方法

string hexString = "48";
            int num = Int32.Parse(hexString,System.Globalization.NumberStyles.HexNumber);
            Console.WriteLine(num);

 

posted @   zmztyas  阅读(13524)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示