C# 将包含二维对象数组的对象转换为字符串数组
我有一个返回以下类型和对象的方法:C# 将包含二维对象数组的对象转换为字符串数组,c#,C#,我有一个返回以下类型和对象的方法: object {object[,]} test {object[19, 2]} 是否可以将其转换为二维字符串数组或数据表?看起来很奇怪,但我还没有找到其他方法 int firstDimensionSize = 19; int secondDimensionSize = 2; object[,] objectArray = new object[firstDimensionSize, secondDimensionSize]; string[,]
object {object[,]}
test {object[19, 2]}
是否可以将其转换为二维字符串数组或数据表?看起来很奇怪,但我还没有找到其他方法
int firstDimensionSize = 19;
int secondDimensionSize = 2;
object[,] objectArray = new object[firstDimensionSize, secondDimensionSize];
string[,] stringArray = new string[objectArray.Length / secondDimensionSize, secondDimensionSize];
for (int i = 0; i < objectArray.Length / secondDimensionSize; i++)
{
for (int j = 0; j < secondDimensionSize; j++)
{
stringArray[i, j] = objectArray[i, j].ToString();
}
}
int firstDimensionSize=19;
int secondDimensionSize=2;
object[,]objectArray=新对象[firstDimensionSize,secondDimensionSize];
string[,]stringArray=新字符串[objectArray.Length/secondDimensionSize,secondDimensionSize];
对于(int i=0;i
如果您的第二维度总是相同的,您可以省略内部循环,用静态代码替换它
另请参见我创建了这个扩展方法,但如果您不经常需要它,也可以将其作为普通方法
public static class Extensions
{
public static string[,] ConvertToString2D(this object[,] arr)
{
int dim1 = arr.GetLength(0);
int dim2 = arr.GetLength(1);
string[,] strArray = new string[dim1, dim2];
for (int i = 0; i < dim1; i++)
{
for (int j = 0; j < dim2; j++)
{
strArray[i, j] = Convert.ToString(arr[i, j]);
}
}
return strArray;
}
}
所以有没有帮助?
var result = objArr.ConvertToString2D();