Меню
Категории
Задача №2
15 апреля, 2008 Задачки

Задача — считать в буфер заданный текстовый файл, преобразовать символы в верхний регистр и вывести на экран;

В задаче будем пользоваться функциями для работы с файлами: fread, fseek и т.д. Последовательно считаем каждый символ прибавляя счетчик и получим размер файла в байтах. Хотя сделать это можно через WinAPI 1 функцией.

#include <iostream.h>
#include <conio.h>

int main(int argc, char* argv[])
{
char *buf;
FILE *f;

if ((f = fopen(“1.txt”,”r”))== NULL)
{
printf(“Cannot open input file.\n”); // Не могу открыть.

getch();
return 1;
}

long curpos, length;
curpos = ftell(f);
fseek(f, 0L, SEEK_END);
length = ftell(f); //Узнаем размер файла
fseek(f, curpos, SEEK_SET);
printf(“Filesize is %ld bytes\n”, length);

buf = new char [length]; // создаем буфер для файла с его размером
fread(buf,length,1,f); //считывваем 1 блок размеров с размер файла
for(int i=0;i<length;i++) //в цикле выводим все
cout<<(char)toupper(buf[i]); //toupper делает заглавными

getch();
return 0;
}

Добавить комментарий




*