将List <string>转换为List <uint32>

时间:2017-07-13 16:12:21

标签: c# list

我有一个十六进制值的字符串,所以我需要将十六进制值放在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();

1 个答案:

答案 0 :(得分:3)

您需要转换为INT并告诉convert函数,输入是十六进制格式:

uintvalue = stringvalue.Select(s => int.Parse(s,NumberStyles.HexNumber)).ToList();

或(对于UINT32)

uintvalue = stringvalue.Select(s => Convert.ToUInt32(s, 16)).ToList();