Чтение и запись (сохранение) двумерного массива - C#
Формулировка задачи:
Имеется двумерный массив, нужно, чтобы пользователь мог его сохранить, а потом снова открыть.
Решение задачи: «Чтение и запись (сохранение) двумерного массива»
textual
Листинг программы
- static int[,] ReadArray(string path)
- {
- int[,] arr;
- using (StreamReader sr = new StreamReader(path))
- {
- int n = int.Parse(sr.ReadLine()); //число строк
- int m = int.Parse(sr.ReadLine()); //число столбцов
- arr = new int[n, m];
- for (int i = 0; i < n; i++)
- {
- //Считываем очередную строку из файла, в которой хранятся значения столбцов текущей строки
- //Методом Split разбиваем ее по пробелам и заполняем массив.
- string temp = sr.ReadLine();
- string[] line = temp.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
- for (int j = 0; j < m; j++)
- {
- arr[i, j] = int.Parse(line[j]);
- }
- }
- }
- return arr;
- }
- static void WriteArray(string path, int[,] array)
- {
- using (StreamWriter sw = new StreamWriter(path, false))
- {
- sw.WriteLine(array.GetLength(0));
- sw.WriteLine(array.GetLength(1));
- for (int i = 0; i < array.GetLength(0); i++)
- {
- string[] line = new string[array.GetLength(1)];
- for (int j = 0; j < array.GetLength(1); j++)
- {
- //Cобираем в строковый массив столбцы текущей строки массива
- line[j] = array[i, j].ToString();
- }
- //Метод Join() склеивает элементы массива line в одну строку, разделяя их пробелами
- sw.WriteLine(String.Join(" ", line));
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д