Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
tumanovalex
#1

Считывание файла с CD-ROM c миганием лампочки - C++

08.11.2010, 16:10. Просмотров 821. Ответов 0
Метки нет (Все метки)

Попросили меня написать программу, которая постоянно читает один и тот же файл с CD-ROM до нажатия определенной клавиши. При этом нужно сделать так, чтобы лампочка CD-ROM при чтении файла мигала. Файл размером 3 Мб. Я написал простое консольное приложение (считывание файла 2 раза) с функцией

int read_file_с(const char *file_name, const int buf_size)
{
FILE *file_in;
int i, nmax=2;
file_in = check_file(file_name);
if(buf_size==0) // без буферизации
{
setvbuf(file_in, NULL,_IONBF,0);
for(i=0;i<nmax;i++)
{
while((getc(file_in))!=EOF)
{
} //while
printf('cycle %d
',i);
fseek(file_in,0,SEEK_SET);
}//for
} //if
else // с буфферизацией
{
char *buffer = new char[buf_size];
setvbuf(file_in, buffer, _IOFBF, buf_size);
for(i=0;i<nmax;i++)
{
while(fgets(buffer,buf_size,file_in)!=NULL)
{
} // while
printf('cycle buffer %d
',i);
fseek(file_in,0,SEEK_SET);
}
} //else
fclose(file_in);
printf('
File read
');
return 0;
}

В Win 9x и ME при разных размерах буфера лампочка мигает с разной частотой, скорость считывания файла заметно зависит от размера буфера. Однако в Win 2k, XP файл практически мгновенно считывается в память вне зависимости от буфера и при повторных чтения файла лампочка CDROM не загорается. При дальнейших запусках программы файл вообще не считывает с CDROM, лампочка даже не мигает. Я так понимаю, что в этих ОС файл считывается в память, ОС где-то помечает местонахождение файла и далее при попытках считывания файла с CDROM ОС считывает его из памяти. Подскажите, пожалуйста, как можно решить эту задачу средствами С или API? Размеры файла, считываемого с CDROM, можно в случае необходимости увеличить.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.11.2010, 16:10
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Считывание файла с CD-ROM c миганием лампочки (C++):

Заменить считывание с клавиатуры на считывание из файла - C++
Помогите пожалуйста, ни разу не работал со считыванием из файла поэтому не понимаю как и что делать. Почитал в интернете, попробовал, не...

Считывание файла в массив и запись нового файла - C++
Консоль VS C++. Текстовый файл открывается как бинарный, и считывается по 100 байт в массив - и сразу они переписываются в другой файл. В...

Считывание из файла. - C++
Считывание из файла. Подскажите пожалуйста!!!! Очень надо!!!!!! Как из файла считать только определенную матрицу (фрагмент) и...

Считывание с файла - C++
Задание 1: Считать с файла и найти количество слов из 4 и менее букв. (test.txt по умолчанию в папке с программой) Вопрос: Почему он...

Считывание из файла - C++
Есть к примеру некий файл d:\\file.txt Мне оттуда нужно считать переменные. Все нормально считывает fsсanf если в файле ТОЛЬКО цифры. ...

Считывание из файла - C++
#include &lt;iostream&gt; #include &lt;time&gt; #include &lt;fstream&gt; using namespace std; int linear_search(int array, int size, int...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.11.2010, 16:10
Привет! Вот еще темы с ответами:

Считывание с файла - C++
Прогррамма неверно считывает числа с файла.вот кусок программы int mass_in_3(int *k,int *j) { int array; FILE *f1; ...

Считывание с файла - C++
ВСЕМ ПРИВЕТ!Я пишу программу смысл ее такой: создан файл key.txt(в этом файле написано 1234) при запуске программы она нам покажет если в...

Считывание с файла - C++
2 3 4 5 3 2 9 4 4 5 5 1 2 8 7 0 1 9 2 3 4 3 8 1 5 1 4 2 7 9 4 0 0 7 7 1 9 5 8 5 8 3 0 1 4 8 9 3 4 1 7 7 1 3 3 7 0 1 3 1 0...

Считывание из файла - C++
Здравствуйте. подскажите как сделать, чтобы с файла считывались 2 числа, но при этом в файле это выглядит вот так : (25,16). Пытался...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru