Название: QByteArray rawData to double[] Отправлено: __Heaven__ от Июнь 02, 2014, 11:29 Здравствуйте!
Имеется массив данных QByteArray прочитанных из бинарного файла, который содержит записи значений double. Мне необходимо вывести эти значения в десятичном виде. Сейчас я делаю следующее: с помощью data() я получаю указатель на начало массива, прибавляю к нему i * sizeof(double), где i - порядковый номер интересующего меня числа. В переменную double tmp я копирую сырые данные из получившегося указателя memcpy(&tmp, массив->data() + i * sizeof(double), sizeof(double)). Вывожу tmp на экран. Это работает, но как-то уж больно криво выглядит. Как было бы наиболее корректно написать? Название: Re: QByteArray rawData to double[] Отправлено: OKTA от Июнь 02, 2014, 11:40 Почитай описание вот этой хитрой штуки http://qt-project.org/doc/qt-4.8/qdatastream.html
Название: Re: QByteArray rawData to double[] Отправлено: GreatSnake от Июнь 02, 2014, 11:51 Имеется массив данных QByteArray прочитанных из бинарного файла, который содержит записи значений double. А кто мешает сразу читать эти double без левого для данного случая QByteArray ???Название: Re: QByteArray rawData to double[] Отправлено: __Heaven__ от Июнь 02, 2014, 12:02 Имеется массив данных QByteArray прочитанных из бинарного файла, который содержит записи значений double. А кто мешает сразу читать эти double без левого для данного случая QByteArray ???Название: Re: QByteArray rawData to double[] Отправлено: xokc от Июнь 02, 2014, 12:12 Как? Я пробовал получить указатель на элемент, возвращаемый operator[] - не получилось Как-то такКод
Название: Re: QByteArray rawData to double[] Отправлено: __Heaven__ от Июнь 02, 2014, 13:36 Кажется, понял.
Всё, что мне нужно, это QBuffer. С ним уже можно будет использовать QDataStream. Спасибо за помощь Название: Re: QByteArray rawData to double[] Отправлено: kambala от Июнь 02, 2014, 13:49 QDataStream можно использовать и прямо с QFile
Название: Re: QByteArray rawData to double[] Отправлено: __Heaven__ от Июнь 02, 2014, 14:24 QDataStream можно использовать и прямо с QFile Задача стоит такая:Открыть файл и представлять его как массив double, как массив int, как char и т.д. Не очень подходит такой вариант Название: Re: QByteArray rawData to double[] Отправлено: OKTA от Июнь 02, 2014, 14:53 Код: QFile file("doubleInt.txt"); все достается так, как захочешь.. |