如何在c#中将十六进制从char []转换为int [重复]

Posted

技术标签:

【中文标题】如何在c#中将十六进制从char []转换为int [重复]【英文标题】:how to convert hex from char[] to int in c# [duplicate] 【发布时间】:2018-11-11 00:56:17 【问题描述】:

如果我有:

 char[] hexText = new char[9]; //5A3F0000A
 char c =   hexText[9]; //A              
 int lastD = // will be 10;

我试图转换它,但它失败了.. 怎么办?

谢谢!

【问题讨论】:

你做了什么来尝试转换它? 【参考方案1】:

您可以使用十六进制字符的有序字符串和IndexOf 字符串方法来处理此基本转换。

string hexabet = "0123456789ABCDEF";
char c = 'A';
int lastD = hexabet.IndexOf(c);
Console.WriteLine(lastD); // 10

【讨论】:

谢谢!我不知道什么是'c',因为我正在从文件中读取数据。我需要 'c' 从十六进制中获取最后一位数字。在你的例子 F. @Kate 我认为你不明白这是如何工作的。 @Kate 为了本示例的目的,我将其设置为常量“A”。 hexabet 是您的整个十六进制字母表。我正在利用每个字符的索引与其十进制值相同的事实。如果您读取的任何字符串的最后一个值是 '8',那么 hexabit.IndexOf('8') 将是 8。如果它是 D,那么 hexabit.IndexOf('D') 将是 13。 我的情况不同。我需要从文件中获取十六进制数并使用最后一位作为长度 - 这就是为什么我想将 char[] 转换为 int 现在我明白了。感谢您的帮助!

以上是关于如何在c#中将十六进制从char []转换为int [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 C# 中将 E+ 数字从字符串转换为十进制? [复制]

在C中将char从大端转换为小端

如何在python中将unsigned char类型的int字符串转换为int

在 C 中将 int 转换为 2 字节的十六进制值

如何使用“ord”函数在 Haskell 中将 Char 转换为 Int?

在 C 中将 ascii char[] 转换为十六进制 char[]