В этой статье мы рассмотрим, как в Rust работать с файлами и обрабатывать ошибки при чтении и записи данных. Мы разработаем простое приложение для учета задач, которое будет сохранять задачи в файл и загружать их при следующем запуске.
1. Шаг 1: Создание структуры Task
Для начала определим структуру Task, которая будет представлять собой одну задачу с полями для названия, описания и статуса выполнения.
rust
2. Шаг 2: Реализация функций для работы с файлами
Теперь создадим функции для чтения и записи списка задач из файла.
rust
Здесь мы используем библиотеку serde для сериализации и десериализации данных в формат JSON. Функция write_tasks_to_file() принимает список задач и записывает их в файл tasks.json, а функция read_tasks_from_file() читает данные из файла и возвращает список задач.
3. Шаг 3: Работа с пользовательским вводом
Создадим функцию, которая будет запрашивать у пользователя информацию о новой задаче и добавлять ее в список задач.
rust
4. Шаг 4: Реализация главной функции
Теперь создадим главную функцию, которая будет обрабатывать ввод пользователя и вызывать соответствующие функции для работы с задачами.
rust
В главной функции мы используем бесконечный цикл для отображения меню пользователю. Затем, в зависимости от выбора пользователя, вызываем соответствующие функции.
5. Шаг 5: Запуск программы
Сохраним файл и запустим наше приложение:
bush "cargo run"
Теперь мы разработали полноценное приложение для учета задач, которое сохраняет задачи в файл tasks.json и загружает их при следующем запуске.
Задание:
- Добавьте функцию для отметки задачи как выполненной и реализуйте соответствующую функцию в меню приложения.
- Добавьте функцию для удаления задачи из списка и реализуйте соответствующую функцию в меню приложения.
Теперь вы создали полноценное приложение на Rust с использованием работы с файлами и обработки ошибок! В следующей статье мы продолжим углубляться в различные аспекты разработки на Rust и добавим обработку ошибок для пользовательского ввода.