我有一个 C# 数组,我想从中获取每个元素并将其存储在每个 csv 单元格中。我编写了以下内容:
StreamWriter file = new StreamWriter("C:/mylocation/data.csv");
//my2darray is my 2d array created.
for (int i = 0; i < my2darray.GetLength(1); i++)
{
for (int j=0; j<my2darray.GetLength(0);j++)
{
file.Write(my2darray[i][j]);
file.Write("\t");
}
file.Write("\n"); // go to next line
}
问题是每个 csv 单元格包含多个数组元素。如何解决?
最佳答案
我宁愿将 CSV 表示和保存分开:
private static IEnumerable<String> ToCsv<T>(T[,] data, string separator = ",") {
for (int i = 0; i < data.GetLength(0); ++i)
yield return string.Join(separator, Enumerable
.Range(0, data.GetLength(1))
.Select(j => data[i, j])); // simplest, we don't expect ',' and '"' in the items
}
...
File.WriteAllLines(@"C:/mylocation/data.csv",
ToCsv(my2array));
关于c# - 将二维 C# 数组的内容存储到 csv 文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39792207/