拆分一个非常大的字符串

时间:2014-02-07 16:54:58

标签: c# string hex

我正在寻找一个C#代码将一个非常大的字符串(十六进制值)拆分成8个大小的字符串(字符串数组),以便我可以逐个将它们转换为整数。

十六进制值字符串看起来像...000000030000000800000002...,我希望它们位于000000030000000800000002等。

非常感谢!

3 个答案:

答案 0 :(得分:1)

这是一个易于理解的版本:

string x = "0000000100000002000000003";

List<string> a = new List<string>();
for (int i = 0; i < x.Length; i += 8)
{
    if((i + 8) < x.Length)
        a.Add(x.Substring(i, 8));
    else
        a.Add(x.Substring(i));
}

结果是:

a[0] = 00000001;
a[1] = 00000002;
a[2] = 00000003;

答案 1 :(得分:0)

我想这也许就是你要找的东西:

string sentence = "0000000100000002000000003";
string[] digits = Regex.Split(sentence, ".{8}");

<强>结果:

digits[0] = "00000001"
digits[1] = "00000002"
digits[2] = "00000003"

答案 2 :(得分:0)

您可以在字符串上使用String.Split方法,如下所示:

string longString = "10101010,10101010,10101010"
string[] Array;
Array = longString.Split(",");

要获得以逗号分隔的字符串,您可以使用@ Sameer的正则表达式。