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

Как работает команда seekg? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.63
АлексИванов
0 / 0 / 1
Регистрация: 08.11.2012
Сообщений: 72
27.11.2012, 12:07     Как работает команда seekg? #1
Всем привет!!!
Объясните пожалуйста на примере как работает функция seekg?
пробовал искать в поиске, о ней но ничего дельного и ясного я не нашел(
Пример:
Есть файл в котором хранятся 9 чисел типа double например:
3.456 323.4 2.323
7.356 93.32 8.456
10.49 1.323 6.387
Так вот единственное что я понял так это что означает seekg(0)- это возврат в начало файла, и что перед этим надо писать clear();Но как перемещать курсор например к элементу матрицы 3 3 я не понимаю или как переместить курсор к элементу 1 2 или 2 3?! подскажите пожалуйста.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2012, 12:07     Как работает команда seekg?
Посмотрите здесь:

C++ Не запускается програма с seekg
C++ Разница между seekg() и seekp()
методы seekg и seekp C++
Обработка файлов. Функция seekg(); C++
seekg() не срабатывает по окончанию файла C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
27.11.2012, 12:37     Как работает команда seekg? #2
Цитата Сообщение от АлексИванов Посмотреть сообщение
хранятся 9 чисел
Это не числа хранятся, это строки...числа хранятся в бинарном виде.
АлексИванов
0 / 0 / 1
Регистрация: 08.11.2012
Сообщений: 72
27.11.2012, 12:40  [ТС]     Как работает команда seekg? #3
Ну и как же всё таки мне переместиться в нужное место?!
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
27.11.2012, 12:44     Как работает команда seekg? #4
АлексИванов, отсчитать нужно количество байт. В данном случае 1 байт - 1 символ.
АлексИванов
0 / 0 / 1
Регистрация: 08.11.2012
Сообщений: 72
27.11.2012, 12:52  [ТС]     Как работает команда seekg? #5
А пробел и точки считаются за байт?!
И как мне на 2ю строку переместиться?!
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
27.11.2012, 13:14     Как работает команда seekg? #6
АлексИванов, конечно, они так же являются символами.
Цитата Сообщение от АлексИванов Посмотреть сообщение
И как мне на 2ю строку переместиться?!
Или считать всю текущую строку, или считывать по байту, пока не встретится символ новой строки, следующий байт и будет началом новой строки.
Текстовые файлы на то и текстовые, что каждый символ это один байт ( может конечно и больше одного байта занимать символ в некоторых кодировках, но тут это не важно ). Полагаю, Вам лучше подойдут бинарные файлы.
Yandex
Объявления
27.11.2012, 13:14     Как работает команда seekg?
Ответ Создать тему
Опции темы

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