C# как разделить на равные части и записать в строковый массив?

string str = "001010101001";

Нужно разделить str на части по 4 символа и записать в строковый массив. Т.е.

a[0]="0010" a[1]="1010" a[2]="1001"


Ответы (1 шт):

Автор решения: aepot
// длина строки должна быть кратна 4, иначе ничего не получится
string text = "001010101001";
string[] a = new string[text.Length / 4];
for (int i = 0; i < a.Length; i++)
    a[i] = text.Substring(i * 4, 4);
Console.WriteLine(string.Join(Environment.NewLine, a));
0010
1010
1001

Еще можно так

a[i] = text[i * 4, i * 4 + 4];

Или вообще вот так без цикла, но нужен .NET 6

string[] a = text.Chunk(4).Select(x => new string(x)).ToArray();
→ Ссылка