Консультация № 77935
12.03.2007, 11:39
0.00 руб.
0 2 2
Пожалуйста, помогите мне в решении задачи! Вот условие:
Задача по обработке файлов.
В этой задаче нужно самостоятельно определить структуру записи и характеристики ее элементов, выполнить описание данной структуры и написать программу, содержащую функции создания файла, вывода на экран всей информации и информации, соответствующей условиям поиска.
Запись должна содержать следующую информацию: фамилия и инициалы авторов, название книги, издательство, год издания, количество страниц, количество глав в книге, название дисциплины.
Для проверки правильности работы программы ее нужно протестировать. Для этого необходимо записать в файл 8-10 записей и далее выполнить вывод на экран вначале всей инфомации, а затем информации, соответствующей условию поиска.

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

Обсуждение

Неизвестный
12.03.2007, 12:23
общий
это ответ
Здравствуйте, Lrad!

int index;
typedef struct addr // структура
{
char Fio[50] // ФИО 50 символов
char kniga[50] // Книга 50 символов

} ros ;

ros * zapis;

если количество записей не известно то создается динамический массив(
ros * zapis;
a = new vopros[index]


// запись файла
TMemoryStream *tmp = new TMemoryStream();
__int64 Size=0 ;
tmp->Position=0;
tmp->Size=0;
tmp->Write(&index,sizeof(int)); // запись а количестве записей
for (int i=0 ; index>i; i++) {
tmp->Write(&zapis [i],sizeof(ros) ) ;
}
Size=r->Size;
tmp->Write(&Size,sizeof(__int64));
r->Position=0;
tmp->CopyFrom(r,Size);
tmp->SaveToFile(“C:\\файл.000 ”);
tmp->Free();

…..

TMemoryStream *tmp = new TMemoryStream(); // открытие и чтение
__int64 Size=0 ;
tmp->Position=0;
tmp->Size=0;
tmp->LoadFromFile(C:\\файл.000 ”) ;
tmp->Read(&index,sizeof(int));
a = new ros[index] ;
for (int i=0 ; index>i; i++) {
tmp->Read(&zapis [i],sizeof(ros) ) ;
}
tmp->Free();


поиск можно осуществить в цикле обращаясь к полям структуры (zapis [i]. Fio==”что ищем ” )
Неизвестный
12.03.2007, 12:40
общий
это ответ
Здравствуйте, Lrad!
Здравствуйте, Lrad!
Из вашего сообщения:"Задача по обработке файлов.
В этой задаче нужно самостоятельно определить структуру записи и характеристики ее элементов, выполнить описание данной структуры и написать программу, содержащую функции создания файла, вывода на экран всей информации и информации, соответствующей условиям поиска." - совершенно непонятно каков исходный файл.
Вы должны точно задать условия.
Например. Дан текстовый файл в котором содержатся данные о книгах в следующем формате: Названию предшествует слово "Название", году издания предшествует слово "год" и т.д.
Та форма, в которой вы даете ваше задание, не позволяет делать предположений о структуре файла (например это может быть зазипованный pdf или набор фотографий обложек книжки в jpeg формате собранных вместе в один файл, или это может быть текстовый файл на китайском языке).
Так что, пожалуйста, потрудитесь сформулировать вашу задачу.
Форма ответа