Форум программистов, компьютерный форум CyberForum.ru

Считывание байтов с конца файла - C++

Восстановить пароль Регистрация
 
cripok
0 / 0 / 0
Регистрация: 24.02.2013
Сообщений: 15
24.02.2013, 13:00     Считывание байтов с конца файла #1
Добрый день, уважаемые форумчане.
Возник вопрос: Как считывать байты с конца файла?
Конкретно: Имеется файл (.txt) в котором находится огромное число. Требуется считывать и вывести каждую цифру с конца файла до его начала (фактически, вывести инвертированное число). Как это организовать, используя при этом файловую библиотеку fstream?
Спасибо...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5956 / 5561 / 1788
Регистрация: 18.12.2011
Сообщений: 14,210
Завершенные тесты: 1
24.02.2013, 14:03     Считывание байтов с конца файла #2
Используйте метод
C++
1
basic_istream<Elem, Tr>& seekg( off_type _Off,ios_base::seekdir _Way);
_Off
An offset to move the read pointer relative to way.
_Way
One of the ios_base::seekdir enumerations:
static const seekdir beg, cur, end;

т.е. для перемещение на 1 байт от конца надо написать:
mystream.seekg(-1,ios::end);
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
24.02.2013, 14:41     Считывание байтов с конца файла #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <fstream>
 
using namespace std;
 
int main()  {
    fstream f_io("input.txt", ios::in);
    long n = 0;
    if(!f_io)
        return -1;
 
    f_io.seekp(0, ios::end);
    while(1 != f_io.tellg())  {
        f_io.seekg(--n, ios::end);
        cout << (char)f_io.get();
    }
 
    f_io.close();
    return 0;
}
cripok
0 / 0 / 0
Регистрация: 24.02.2013
Сообщений: 15
24.02.2013, 14:57  [ТС]     Считывание байтов с конца файла #4
Огромное спасибо! Очень благодарен!
Yandex
Объявления
24.02.2013, 14:57     Считывание байтов с конца файла
Ответ Создать тему
Опции темы

Текущее время: 15:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru