我有一个十六进制值的字符串,所以我需要将十六进制值放在List<UInt32>
中,所以我使用string.Split()
来分隔值并创建一个字符串数组,然后我转换该字符串数组为List<string>
,但如何转换为List<UInt32>
?我调查了CopyAll()
,但我不知道它是如何使用的。
以下是代码:
string hex = "{0xa4, 0x23, 0x33} ";
List<string> stringvalue;
List<UInt32> uintvalue;
string[] separators1 = { "{", "}", ",", " ", "0x"};
string[] HEXData = hex.Split(separators1, StringSplitOptions.RemoveEmptyEntries);
stringvalue = HEXData.ToList();
答案 0 :(得分:3)
您需要转换为INT并告诉convert函数,输入是十六进制格式:
uintvalue = stringvalue.Select(s => int.Parse(s,NumberStyles.HexNumber)).ToList();
或(对于UINT32)
uintvalue = stringvalue.Select(s => Convert.ToUInt32(s, 16)).ToList();