crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Загрузить в массив из бинарного файла
Гость_One_*
сообщение 17.1.2011, 21:17
Сообщение #1





Гости








    


Заранее извините за глупый вопрос. У меня есть бинарный файл, в него последовательно записаны координаты точек (x, y) типа float. Теперь требуется извлечь данные в массив, но не как если бы я сразу извлекал всё в вектор, а по кускам, потому что их нужно еще преобразовать. Вот код
QFile file("data.dat");
file.open(QIODevice::ReadOnly);
QDataStream in(&file);

float x, y;
// nmax - количество точек
for (int i=0; i<nmax; i++)
{
   in >> x >> y;
   // преобразования
   // запись в массив
}


Проблема в том, что когда считываю "y" позиция в потоке не смещается, и следующее считывание "x" происходит из места, где хранилось предыдущее "y". Поэтому массив считывается перепутано. Помогите исправить, пожалуйста.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
igor_bogomolov
  опции профиля:
сообщение 18.1.2011, 11:16
Сообщение #2


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Вам же уже ответили на ваш вопрос
Цитата(BRE @ 18.1.2011, 9:48) *
Цитата(One @ 18.1.2011, 1:08) *
Может это контейнер-вектор обозначил так свое начало? :blink:

В документации все написано. Это контейнер сохраняет общее количество элементов, которое он содержит.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.12.2024, 11:09