Управление каталогом файлов

Проектирование программного обеспечения. Схема начального формирования каталога файлов, вывода на экран каталога файлов, удаления файлов, сортировки файлов по имени, дате создания и размеру методом прямого выбора. Управление каталогом в файловой системе.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 08.01.2014
Размер файла 804,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Содержание

1. Вариант для задания

2. Проектирование программного обеспечения

3. Блок схема начальное формирование каталога файлов

4. Блок схема вывода на экран каталога файлов

5. Блок схема удаления файлов

6. Блок схема сортировка файлов по имени, дате создания и размеру методом прямого выбора

7. Текст программы

8. Листинг программы

9. Вывод

1. Вариант для задания

Вариант 8

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

Программа должна обеспечивать:

1. Начальное формирование каталога файлов;

2. вывод на экран каталога файлов;

3. возможность удаления файлов;

4. сортировку файлов по имени, дате создания и размеру методом прямого выбора.

2. Проектирование программного обеспечения

В данной программе использовалось 5 классов:

Class schapka- необходим для вывода заглавной информации таблицы перед выводом самой таблицы.

Class pomoch- Необходим для вывода списка команд.

Class test-Необходим для вывода постоение, и вывода таблицы на экран

class voenno - Необходим для заполнения первоначальной информации в массив и управление с ним.

Class Program- Точка входа программы, с этого класса начинает программа считывать исходный код и выполнять его.

3. Блок схеманачальное формирование каталога файлов

4. Блок схема вывода на экран каталога файлов

5. Блок схема удаленияфайлов

программный обеспечение каталог файл

6. Блок схема сортировка файлов по имени, дате создания и размеру методом прямого выбора

7. Текст программы

using System;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Text;

usingSystem.Threading.Tasks;

namespace ConsoleApplication2

{

classschapka

{

publicstaticvoid Volume(string a, string b, strings,int q)

{

Console.Write(a);

int p = q - a.Length;

for (inti = 0; i< p; i++)

{

Console.Write(" ");

}

Console.Write("|");

p = q - b.Length;

Console.Write(b);

for (inti = 0; i< p; i++)

{

Console.Write(" ");

}

Console.Write("|");

p = q - s.Length;

Console.Write(s);

for (inti = 0; i< p; i++)

{

Console.Write(" ");

}

}

}

classpomoch

{

publicstaticvoid Volume()

{

Console.WriteLine("Команда | Описание ");

Console.WriteLine("выход | Выйти с базы и начать программу сначала, либо закрыть совсем");

Console.WriteLine("сортировать | Позволяет сортировать элемент по выбору");

Console.WriteLine("список | Позволяет показать весь список");

Console.WriteLine("удалить | Удаляем по номеру файла");

Console.WriteLine("очистить | очищает консоль");

}

}

classtest

{

publicstaticvoid Volume(string a, string b, strings,int w, int q)

{

Console.Write(q + 1 + " |" + a);

int z = w - a.Length;

for (inti = 0; i< z; i++)

{

Console.Write(" ");

}

Console.Write("|" + b);

z = w - b.Length;

for (inti = 0; i< z; i++)

{

Console.Write(" ");

}

Console.Write("|"+s);

z = w - s.Length;

for (inti = 0; i< z; i++)

{

Console.Write(" ");

}

Console.WriteLine();

}

}

classvoenno

{

publicstaticvoid Volume(int a)

{

DateTime[] softq = newDateTime[a];

int[] softa = newint[a];

string[] soft = newstring[a];

string[,] fio = newstring[a, 3];

for (inti = 1; i<= a; i++)

{

for (int j = 1; j <=3 ; j++)

{

if (j == 1)

{

Console.Write("ВведитеИмяфайла : ");

fio[i - 1, j - 1] = Console.ReadLine();

}

elseif (j == 2)

{

Console.Write("Введитедатусоздания : ");

fio[i - 1, j - 1] = Console.ReadLine();

}

elseif (j == 3)

{

Console.Write("Введитеразмерфайла : ");

fio[i - 1, j - 1] = Console.ReadLine();

}

}

}

Console.WriteLine("Весьсписок...");

Console.Write("№ |");

int w = 0;

for (int j = 0; j < 2; j++)

{

for (inti = 0; i< a; i++)

{

if (w <fio[i, j].Length)

{

w = fio[i, j].Length;

}

}

}

stringasd = "Имя ";

stringdsa = "Дата ";

string sad = "Размер ";

schapka.Volume(asd, dsa, sad,w);

Console.WriteLine();

for (inti = 0; i< a; i++)

{

test.Volume(fio[i, 0], fio[i, 1], fio[i,2],w, i);

}

intq = 0;

for (; ; )

{

Console.Write("Введите команду для управления : ");

stringkom = Convert.ToString(Console.ReadLine());

if (kom == "сортировать")

{

Console.WriteLine("Выберитетипсортировки :");

Console.WriteLine("1 - Сортировать по имени");

Console.WriteLine("2 - Сортировать по дате");

Console.WriteLine("3 - Сортировать по размеру");

Console.Write("Введите тип сортировки : ");

q = Convert.ToInt32(Console.ReadLine());

if (q == 1)

{

for (inti = 0; i< a; i++)

{

soft[i] = fio[i, 0];

}

Array.Sort(soft);

Console.Write("№ |");

schapka.Volume(asd, dsa, sad,w);

Console.WriteLine();

for (inti = 0; i< a; i++)

{

for (int j = 0; j < a; j++)

{

if (soft[i] == fio[j, 0])

{

test.Volume(fio[j, 0], fio[j, 1], fio[j, 2], w, j);

}

}

}

}

elseif (q == 2)

{

for (inti = 0; i< a; i++)

{

softq[i] = Convert.ToDateTime(fio[i, 1]);

}

Array.Sort(softq);

Console.Write("№ |");

schapka.Volume(asd, dsa, sad,w);

Console.WriteLine();

for (inti = 0; i< a; i++)

{

for (int j = 0; j < a; j++)

{

if (softq[i] == Convert.ToDateTime(fio[j, 1]))

{

test.Volume(fio[j, 0], fio[j, 1], fio[j, 2], w, j);

}

}

}

}

elseif (q == 3)

{

for (inti = 0; i< a; i++)

{

softa[i] = Convert.ToInt32(fio[i, 2]);

}

Array.Sort(softa);

Console.Write("№ |");

schapka.Volume(asd, dsa, sad,w);

Console.WriteLine();

for (inti = 0; i< a; i++)

{

for (int j = 0; j < a; j++)

{

if (softa[i] == Convert.ToInt32(fio[j, 2]))

{

test.Volume(fio[j, 0], fio[j, 1], fio[j, 2], w, j);

}

}

}

}

else

{

Console.WriteLine("Не правильно введена команда...");

Console.WriteLine("Выберите основную команду");

q = 0;

}

}

elseif (kom == "список")

{

if (q == 1)

{

Console.Write("№ |");

schapka.Volume(asd, dsa, sad,w);

Console.WriteLine();

for (inti = 0; i< a; i++)

{

for (int j = 0; j < a; j++)

{

if (soft[i] == fio[j, 0])

{

test.Volume(fio[j, 0], fio[j, 1], fio[j, 2], w, j);

}

}

}

}

if (q == 2)

{

Console.Write("№ |");

schapka.Volume(asd, dsa, sad,w);

Console.WriteLine();

for (inti = 0; i< a; i++)

{

for (int j = 0; j < a; j++)

{

if (softq[i] == Convert.ToDateTime(fio[j, 1]))

{

test.Volume(fio[j, 0], fio[j, 1], fio[j, 2], w, j);

}

}

}

}

if (q == 3)

{

Console.Write("№ |");

schapka.Volume(asd, dsa, sad,w);

Console.WriteLine();

for (inti = 0; i< a; i++)

{

for (int j = 0; j < a; j++)

{

if (softa[i] == Convert.ToInt32(fio[j, 2]))

{

test.Volume(fio[j, 0], fio[j, 1], fio[j, 2], w, j);

}

}

}

}

if (q == 0)

{

Console.Write("№ |");

schapka.Volume(asd, dsa, sad,w);

Console.WriteLine();

for (inti = 0; i< a; i++)

{

test.Volume(fio[i, 0], fio[i, 1], fio[i, 2], w, i);

}

}

}

elseif (kom == "выход")

{

break;

}

elseif (kom == "очистить")

{

Console.Clear();

}

elseif (kom == "помощь")

{

pomoch.Volume();

}

elseif (kom == "удалить")

{

Console.Write("Что вы хотите удалить, введите № файла : ");

inti = Convert.ToInt32(Console.ReadLine());

fio[i-1, 0] = null;

fio[i-1, 1] = null;

fio[i-1, 2] = null;

for (; i< a; i++)

{

if (i<= a)

{

fio[i - 1, 0] = fio[i, 0];

fio[i - 1, 1] = fio[i, 1];

fio[i - 1, 2] = fio[i, 2];

fio[i, 0] = null;

fio[i, 1] = null;

fio[i, 2] = null;

}

}

--a;

Console.WriteLine();

Console.Write("№ |");

schapka.Volume(asd, dsa, sad, w);

Console.WriteLine();

for (int j = 0; j < a; j++)

{

test.Volume(fio[j, 0], fio[j, 1], fio[j, 2], w, j);

}

//Console.WriteLine(fio.Length);

//foreach (var item in fio) Console.WriteLine(item);

//string fio[,]=new string[a-1,3];

}

else

Console.WriteLine("Чтобы узнать все команды введите команду \"помощь\"");

}

}

}

classProgram

{

staticvoid Main(string[] args)

{

char z = 'y';

for (; ; )

{

Console.Write("ВведитеколичествоФайлов : ");

try

{

intkol = Convert.ToInt32(Console.ReadLine());

voenno.Volume(kol);

Console.Write("Повторитьсначала ?");

z = Convert.ToChar(Console.ReadLine());

if (z != 'y')

{

break;

}

}

catch

{

Console.WriteLine("Не правильно введен количество файлов");

Console.Write("Повторитьпопытку ?");

z = Convert.ToChar(Console.ReadLine());

if (z != 'y')

{

break;

}

}

}

}

}

}

8. Листинг программы

9. Вывод

Программа, моделирующая управление каталогом в файловой системе. При первом запуске программа просит ввести количество файлов, после чего просит ввести от пользователя имя файла, дата создание и его размер, столько, сколько указал пользователь количество файлов при первом запуске программы. После того как пользователь введет все сведения, программа автоматически выстроит таблицу на экран, № файла, имя файла, дата создания и его размер. После чего программа попросит ввести команду для управление таблицами. Если пользователь введет команду «Удалить» программа попросит ввести удалить № файла, после того как пользователь ввел № файла, программа удалит элемент с массива так что все элементы стоящим за ним переместятся на одну позицию вперед. Если пользователь введет команду «Сортировать» программа попросит вас ввести каким образом необходимо сортировать: по имени, по дате, либо по размеру. После того как пользователь ввел необходимую команду программа автоматический отсортирует массив там чтобы все сведения остались на нужном положении.

Размещено на Allbest.ru


Подобные документы

  • Понятия файлов и каталогов. Область внешней памяти, группа файлов на одном носителе. Древовидная структура файлов на диске. Имя и местонахождение файла. Маршрут или путь по файловой системе. Запись имени файла в DOSе. Шаблоны. Структура каталога.

    лабораторная работа [15,2 K], добавлен 30.09.2008

  • Особенности работы "поисковика" дублирующихся файлов на диске. Выбор среды программирования. Разработка программного продукта. Основные требования, предъявляемые к программе, производящей поиск дублирующихся файлов на диске. Отображение скрытых файлов.

    курсовая работа [1,8 M], добавлен 28.03.2015

  • Принципы создания последовательных и файлов произвольного доступа. Формирование файлов, в одном из которых помещены фамилии пяти знакомых, а в другой номера их телефонов. Составление программы, которая по фамилии знакомого определяет номер его телефона.

    контрольная работа [17,9 K], добавлен 25.12.2010

  • Обзор особенностей работы с программой Total Commander. Создание папок, копирование файлов на флеш-карту. Вызов контекстного меню. Определение структуры файлов. Переименование группы файлов. Помещение файлов в архив. Разделение архива на несколько частей.

    лабораторная работа [1,9 M], добавлен 08.04.2014

  • Проектирование структуры и архитектуры программного продукта. Реализация программы конвертера файлов баз данных. Описание пользовательского интерфейса. Выбор порядка конвертации dbf файлов. Создание и исполнение шаблонов. Расчет себестоимости продукта.

    дипломная работа [2,2 M], добавлен 21.06.2013

  • Иерархическая структура файловой системы Unix. Согласованная обработка массивов данных, возможность создания и удаления файлов, буферный кэш. Защита информации, трактовка периферийных устройств как файлов. Внутренняя структура файловой системы Unix.

    реферат [102,2 K], добавлен 23.03.2010

  • Понятие процесса архивации файлов. Программы, осуществляющие упаковку и распаковку файлов. Защита информации от несанкционированного доступа. Самораспаковывающиеся архивы. Основные характеристики программ-архиваторов. Распространенные алгоритмы сжатия.

    презентация [801,6 K], добавлен 23.10.2013

  • Описание команды move. Применение командных файлов в случае необходимости использования часто повторяющихся действий. Перемещение одного, нескольких файлов из одного каталога в другой. Отображение справки в командной строке. Реализация сложных алгоритмов.

    контрольная работа [101,7 K], добавлен 22.06.2014

  • Создание и проверка модели оптимального размещения файлов в вычислительной сети со звездообразной, кольцевой и произвольной топологией. Объем данных, необходимый для пересылки файлов. Оптимальное распределение файлов по узлам вычислительной сети.

    контрольная работа [56,7 K], добавлен 20.05.2011

  • Утилиты архивации для создания резервных копий файлов путем помещения их в архив в сжатом виде. Операции над архивами. Алгоритмы архивации. Универсальные алгоритмы уплотнения. Формат задания команд. Степень сжатия файлов. Основные виды архиваторов.

    презентация [241,0 K], добавлен 13.08.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.