将字符串数组分成32列

本文关键字:32列 数组 字符串 | 更新日期: 2023-09-27 17:51:05

我有一个包含96个元素的字符串数组。我想将数组格式化为一个字符串,如下所示:

str    str
str    str
str    str
str    str

而不是这样:

str
str
str
str
str
str
str
str

但是每列中有32个而不是4个。

我该怎么做?

谢谢。

将字符串数组分成32列

如果想要32"行"和3"列",可以使用以下LINQ查询:

string[] strings = Enumerable.Repeat("str", 96).ToArray();
IEnumerable<string[]> arrays = strings
    .Select((str, index) => new { str, index })
    .GroupBy(x => x.index / 3)
    .Select(g => g.Select(x => x.str).ToArray());

因此,每个string[]包含三个字符串,序列包含32个string[] s。

int index = 0;
var result = String.Join(Environment.NewLine,
                         array.GroupBy(s => index++ / 3)
                              .Select(g => String.Join("'t", g)));

如果希望字符串在列中对齐,则使用而不是String.Join("'t", g)

String.Join("", g.Select(s => String.Format("{0,-20}",s)))

这将为每列提供20个字符的宽度,并在列中左对齐字符串。

这可能是解决方案:

int[,] MyArray = new int[32,2];

现在,如果你想把值,那么:

MyArray[0,0] = your first value
//// until
MyArray[32,2] = your last value

当然,您可以使用您想要的类型,而不是int类型。