IT-кот 6. Кот не злопамятный

Но он злой и память у него хорошая. Хотя это не правда, какой он злой? Однако, память у кота действительно хорошая. Почему? Потому что кот записывает все в файлы.

IT-кот 6. Кот не злопамятный IT, Кот, Образование, Файл, Длиннопост

Ранее мы выводили текстовую информацию в консоль (с помощью метода Console.WriteLine), но существуют и другие способы вывода. Например, информацию можно выводить в файл, а затем читать из файла. Для этого воспользуемся методами File.WriteAllLines для записи сведений в файл и File.ReadAllLines для получения данных из него.

Что же такое, эти Lines? Lines - это просто несколько строк текста. В предыдущем примере (IT-кот 5. Оперативная память, как у золотой рыбки) мы выводили строки в консоль по одной. Такой же подход возможен и для файла, однако, удобнее (хотя не всегда - лучше) записывать в файл и читать из него сразу все строки. Для этого сначала сразу все строки нам надо получить.

Сделать это очень просто. Во-первых, нужно определить, куда мы будем складывать строки. Для этого используем список List<string>, создав внутри метода Main переменную с именем lines, представляющую собой новый список строк:

List<string> lines = new List<string>();

Почему список новый и зачем это надо было явно указывать - разберем в следующих постах, а пока давайте заменим весь вывод в консоль на добавление элементов в список, везде написав

lines.Add

вместо

Console.WriteLine

Почему List<string> подчеркнуто красным? Потому что компилятор не знает, откуда брать этот список (может мы сами его придумали). Что ж, подскажем ему, указав вверху после using System; еще одно место для поисков - using System.Collections.Generic;.

Ок, список строк мы получили, но его теперь надо куда-то сохранить. Для этого укажем относительный путь сохранения - "tasks.cat" (о путях подробнее было в самом первом посте - IT-кот 1. Взаимодействие с приложениями), и попросим компьютер файл сохранить (здесь надо указать также еще одно место для поиска System.IO):

File.WriteAllLines("tasks.txt", lines);

Прочитать данные из файла мы можем, создав новый (пример создания был выше) или очистив старый (методом Clear) список дел, а затем загрузив из него строки из файла (ниже пример с очищением):

lines.Clear();

lines.AddRange(File.ReadAllLines("tasks.txt"));

Вроде бы все, но посмотреть то результаты работы как?

Во-первых, можно найти файл на диске и просто его открыть.

Во вторых можно написать метод, который будет выводить все содержимое списка на экран и вызывать его в разных местах.

Пример полного программного кода - здесь (строки, начинающиеся с двух слешей, т.е. с '//' называются комментариями, игнорируются компилятором и позволяют нам писать любые сообщения потомкам).

Все, пришла усталость, продолжение - в следующем посте.

IT-кот 6. Кот не злопамятный IT, Кот, Образование, Файл, Длиннопост

Котомафия

108K постов34.1K подписчиков

Добавить пост

Правила сообщества

В сообществе категорически запрещено:

✔Оскорблять других пользователей. Запрещено использование нецензурных выражений и ругательств. Замена части букв значками "@", "#", "$" и т. д. при вычислимости исходного слова не избавляет от ответственности. Категорически не рекомендуется использование грубо-просторечной лексики, а также упоминания физиологических отклонений;

✔ Сообщения не по теме. Публикуемые сообщения должны соответствовать заявленной теме сообщества;

✔Размещение постов о помощи животным в сообществе без обязательных тегов: #вдобрыеруки #помощь #без рейтинга

Так же напоминаем, что на Пикабу существует специальное сообщество ."Айболит. Помощь животным"

Дорогие друзья, которым не нравятся посты с просьбами о помощи животным, очень просим Вас добавить теги: #помощь #вдобрыеруки и др. в черный список.

✔Плагиат! Не присваивай себе чужие идеи, записи и другой авторский контент.

✔Некорректные комментарии в комментариях, откровенный флуд, провокации, пропаганду жестокого и безответственного отношения к животным и пр. участники заносятся в черный список без дополнительных пояснений и предупреждений!

✔Нарушать правила Пикабу.


Заметили нарушение правил: напишите @zluchkin, @Darsinka

Не забывайте ставить тег "моё", "кот", "котомафия" если выкладываете своих любимцев.

Мы есть в VK: @kotomafia_fan, отмечайте нас на Ваших фото.