C# 向二维数组添加额外列

C# 向二维数组添加额外列,c#,multidimensional-array,C#,Multidimensional Array,我有一个数组: char[,] DataFile=new char[310,6720] 现在,我想动态增加DataFile数组中的列数,因此在增加列数后,它将如下所示: char[,] DataFile=new char[310,6726] 有可能吗?如果有,怎么可能?我读过关于IsFixedSize属性的内容,但我不知道如何使用它。当您调用new时,您正在分配一个新的内存对象,而不是调整现有对象的大小 对于数组,您可以创建一个新的对象,然后将值复制到该对象中,尽管这对内存和性能都很糟糕。我

我有一个数组:

char[,] DataFile=new char[310,6720]
现在,我想动态增加DataFile数组中的列数,因此在增加列数后,它将如下所示:

char[,] DataFile=new char[310,6726]

有可能吗?如果有,怎么可能?我读过关于
IsFixedSize
属性的内容,但我不知道如何使用它。

当您调用
new
时,您正在分配一个新的内存对象,而不是调整现有对象的大小


对于数组,您可以创建一个
新的
对象,然后将值复制到该对象中,尽管这对内存和性能都很糟糕。我建议您重构代码,改用
List

前面的海报已经提到了使用List,但您甚至可以进一步尝试重新设计。名称“DataFile”表示您正在尝试序列化内存中的某些数据。将数据转换为内存中的另一种格式,然后将其写入磁盘,这似乎是个坏主意。你能告诉我们更多关于你的目标吗?这些Char单元格代表什么?

您可以交换行和列,因此您的数组现在是Char[6720310]。然后,不要添加更多的列,只需添加更多的行。

该代码无效。此外,如果您想要动态调整大小,您确实应该考虑使用
列表
或其他东西