如何将C#字符串平分成若干份并将每一份放入到一个数组里

来源:百度知道 编辑:UC知道 时间:2024/09/28 14:14:05
比如字符串str="abcdefghijil"是来自文本的字符串,现要将其转换成一个string的array[]数组,使array[0]=abc;array[1]=def;array[2]=ghi;array[3]=jil。请各位大虾帮忙。

附:这是我写的,但不知道哪里出问题了

string[] array = new string[1000000];
int i, j = 0;
for (i = 0; (i + 3) < str.Length && str.Length >= 3; )
{
array[j] = str.Substring(i, 3);
i = i + 3;
j++;
}
下面三位仁兄的方法都试了,但还是不行,最后那位的方法可以调试,但只能得到字符串的最后一个字符……

都是牛人
我也来一个 任意字符串长度平均分组 而且动态开辟合适内存 不浪费
string str = "abcdefghijilmnp";
int len = 0;
if (str.Length % 3 != 0)
len = str.Length / 3 + 1;
else
len = str.Length / 3;
string[] array = new string[len];
int i, j = 0;
for (i = 0; (i + 3) <= str.Length && str.Length >= i; )
{
array[j] = str.Substring(i, 3);
j++;
i = i + 3;
}
if (str.Length %3 !=0)
array[j] = str.Substring(i, str.Length - i);
//foreach( string s in array)
// Console.WriteLine("{0}",s); 查看结果

你这样分的话,str的长度必须是3的倍数才可以,可能是这个问题吧

string[] array = new string[1000000];
int i, j = 0;
for (i = 0; i < str.Length; )
{