Чтение и запись (сохранение) двумерного массива - 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));
                }
            }
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4 из 5
Похожие ответы