我有一个具有二维数组的String我需要将这些二维字符串转换为整数数组。 例如:
String temp ="[[0xFF008041, 0x24008086, 0x00000000, 0x00000000,0x0008383A]]".
我需要2D字符串值到2d整数数组,反之亦然
答案 0 :(得分:1)
试试这个
static void Main(string[] args)
{
String temp = "[[0xFF008041, 0x24008086, 0x00000000, 0x00000000,0x0008383A]]";
temp = temp.Replace("[", "");
temp = temp.Replace("]", "");
string[] tempArray = temp.Split(new char[] {','}, StringSplitOptions.RemoveEmptyEntries);
uint[] tempIntArray = tempArray.Select(x => FromHex(x)).ToArray();
}
static uint FromHex(string value)
{
uint results;
uint.TryParse(value.Substring(2), NumberStyles.HexNumber, CultureInfo.CurrentCulture, out results);
return results;
}
答案 1 :(得分:1)
好吧,因为它是.Net 2.0
你不能使用Linq
等更现代版本的好处,我建议使用Split
,for
循环,{{ 1}}和Trim
:
注意#1:我的工作是假设字符串中的数字始终是十六进制数。
注意#2:我正在返回一个锯齿状数组而不是多维数组,因为你不能强制字符串中的所有内部数组具有相同数量的元素。
Convert