c# 文本文件写入二维数组
时间: 2023-08-01 21:13:05 浏览: 174
以下是一个示例代码,可以将一个二维数组写入到文本文件中:
```csharp
int[,] array = new int[,] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
string filePath = "array.txt";
// 将二维数组转换为字符串
string arrayStr = "";
for (int i = 0; i < array.GetLength(0); i++)
{
for (int j = 0; j < array.GetLength(1); j++)
{
arrayStr += array[i, j].ToString() + " ";
}
arrayStr += "\n"; // 换行
}
// 将字符串写入文件
System.IO.File.WriteAllText(filePath, arrayStr);
```
这个示例中,我们首先定义了一个二维数组 `array`,然后定义了一个文件路径 `filePath`。接着,我们将二维数组转换为一个字符串 `arrayStr`。在字符串中,我们使用空格将每个元素分隔开,使用 `\n`(换行符)将每一行分隔开。最后,我们使用 `System.IO.File.WriteAllText` 方法将字符串写入到文件中。
如果你想要从文本文件中读取二维数组,可以使用类似的方法,只不过需要将字符串转换为二维数组。
相关问题
c# 文本文件写入二维数组,每个数组元素用逗号分隔
可以使用C#的StreamWriter类进行文本文件写入,同时使用foreach循环遍历二维数组,将每个元素转换为字符串并用逗号分隔,然后写入文本文件。以下是示例代码:
```csharp
int[,] array = new int[,] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
string filePath = "array.txt";
using (StreamWriter writer = new StreamWriter(filePath))
{
for (int i = 0; i < array.GetLength(0); i++)
{
for (int j = 0; j < array.GetLength(1); j++)
{
writer.Write(array[i, j].ToString());
if (j < array.GetLength(1) - 1)
{
writer.Write(",");
}
}
writer.WriteLine();
}
}
```
在上述代码中,首先定义了一个二维整型数组和一个文件路径。然后使用StreamWriter类创建一个写入文件的实例,利用两个嵌套的循环遍历数组,并将每个元素转换为字符串并用逗号分隔,最后写入文件。注意,在内层循环中,在每行的最后一个元素后面不需要再加逗号,因此需要进行判断。
c# 写代码实现读取文本文件写入二维数组
可以使用以下代码来实现:
```csharp
string[] lines = File.ReadAllLines("file.txt");
int rows = lines.Length;
int cols = lines[0].Split(' ').Length;
int[,] array = new int[rows, cols];
for (int i = 0; i < rows; i++)
{
string[] values = lines[i].Split(' ');
for (int j = 0; j < cols; j++)
{
array[i, j] = int.Parse(values[j]);
}
}
```
这段代码首先使用 `File.ReadAllLines` 方法读取文本文件的所有行,并将其存储在字符串数组中。然后,它计算了数组的行数和列数,并创建了一个具有相应大小的二维整数数组。最后,它使用两个嵌套的循环将每个字符串值解析为整数,并将其存储在二维数组中。
阅读全文