Файловые системы, шаблон лабораторной и CSV-формат

Файловые системы и шаблон сдачи #

Файловые системы #

Презентацию по теме можно посмотреть по ссылке

Видео-запись: Rutube

Шаблон лабораторной работы #

Презентацию по теме можно посмотреть по ссылке

Видео-запись: Rutube

Шаблон лабораторной работы можно скачать по ссылке

CSV-документы #

Презентацию по теме можно посмотреть по ссылке

Видео-запись: Rutube

Задание № 1. Использование шаблона лабораторной работы #

Перенесите код приложения для работы с треугольниками в шаблон лабораторной работы. Проверьте работоспособность приложения.

Задание № 2. Реализуйте чтение данных о треугольника из CSV-документа #

  • Путь к файлу с CSV-документом передаётся в качестве первого аргумента командного интерфейса. Если аргумент не задан или ведёт к несуществующему файлу, то приложение должно сообщать об ошибке и завершать свою работу с ненулевым кодом возврата.
  • Чтение данных должно быть реализовано с помощью CSV-библиотеки. Если файл существует, то можно считать, что все данные внутри файла являются корректными.
  • Реализуйте хранение данных о треугольниках в рамках хранилища TriangleStorage.

Предлагаемый формат входного файла:

Id,SideA,SideB,SideC,RegistrationDateTime,BorderColor,FillColor,Description
66ade672-2301-4408-9471-8a17aa883d65,1,2,5,2024-08-26T19:01:41.114511727,GREEN,RED,"странные данные, это неправильный треугольник"
a6be5e23-b8d4-4d78-8aa3-1c204d0befc8,2,3,5,2024-07-10T17:26:41.129567382,RED,GREEN,"точки расположены на отрезке"
baa30333-23d6-4eba-a8ed-7c235adf4228,2,3,4,2024-07-27T00:10:41.129642513,RED,GREEN,"обычный треугольник"
Название поля Описание поля Тип поля
Id Уникальный идентификатор UUID
SideA Длина стороны Натуральное число
SideB Длина стороны Натуральное число
SideC Длина стороны Натуральное число
RegistrationDateTime Дата регистрации в системе Дата и время в формате YYYY-MM-DDThh:mm:ss.sss
BorderColor Цвет границы Из списка цветов
FillColor Цвет заливки Из списка цветов
Description Описание Текст
  • Расширьте количество полей, поддерживаемых классом Triangle.
  • Для преобразования строки к объекту UUID используйте метод fromString()
  • Для преобразования строки к объекту LocalDateTime метод parse(). В качестве формата строки используйте ISO_LOCAL_DATE_TIME.

Задание № 3. Отображение списка треугольников определённого цвета заливки #

Добавьте обработку второго аргумента приложения. В качестве второго аргумента передаётся название цвета заливки. Если цвет заливки не указан или неизвестен приложению, то оно должно завершить работу с сообщением и ненулевым кодом возврата.

Приложение должно вывести на стандартный поток вывода краткую информацию о треугольниках, которые имеют указанный цвет заливки. Для каждого треугольника необходимо вывести:

  • Уникальный идентификатор.
  • Длины сторон треугольника.

© A. M. Васильев, 2024, CC BY-SA 4.0, andrey@crafted.su