Задание 2 (по работе с файлами)

Изначально предполагалось задание по работе с потоками (нитями, threads) в программе. Но приходится упрощать, тем более, что многопоточность не столь частое явление хотя и очень нужное. Поэтому сокращаем до работы с файлами. Получаем почти тоже самое что тут, но без потоков. Обрабатываем входной файл и создаем выходной.

Для вывода в файл нужно можно пользоваться классом StreamWriter из пространства имен System.IO. Для чтения файла подходит класс StreamReader.

Если кто-то хочет сделать задание интереснее и разобраться лучше можно доработать программу, сделанную в первом задании и добавить туда столь недостающую функцию сохранения в файл, то есть добавить туда две дополнителньые команды: save, load. В данном случае сохранение можно выполнить как минимум тремя способами: двоичный файл, текстовой файл (plain text) и xml-документ. Первый сейчас не будем трогать. Во втором случае можно вывести все данные с помощью класса StreamWriter, переделывая данные в строки, а при чтении преобразовывать обратно (тут проблем не возникает, формат сохранения определяете вы сами).

Третий вариант самый лучший и он даже проще (в какой-то мере), но лучший он не изза простоты, а изза гибкости. В случае расширения вашей программы или изменения в данных, модификация такого способа сохранения в разы легче. Когда будете искать ищите по словам xml сериализация. Позже накидаю и прицеплю программку с примером реализации такого способа (видимо на основе того же примера к первому заданию).

Прикрепленный файлРазмер
Первое задание с командами сохранения и загрузки (vech-1.zip)18.71 кб
вернуться назад

Комментарии

пример для второго задания

пример для второго задания прикреплен к материалу