Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
0 / 0 / 1
Регистрация: 11.10.2012
Сообщений: 60
1

Запись данных в бинарный файл

26.11.2013, 22:45. Показов 3272. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер, возник вопрос: как записать массив целых чисел в бинарный файл? У меня запись происходит в таком виде:
C++ (Qt)
1
2
3
4
5
6
7
QFile file(filename);
    if (!file.open(QIODevice::WriteOnly | QIODevice::Text))
        return;
 
    QDataStream out(&file);
    for(int i=0; i < count(); i++)
        out << a[i] << "\n";
Но в итоге в файл записываются непонятные символы. Подскажите правильное решение, пожалуйста
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.11.2013, 22:45
Ответы с готовыми решениями:

Запись в бинарный файл
Я записываю с микрофона в файл wav с помощью QAudioInput. Вот сама запись в файл qint64...

Запись массива char в бинарный файл
Привет. Есть структура вида struct st { int id; char name; }; В поле name пишется...

Qt Запись и чтение QString в бинарный файл
Здравствуйте, столкнулся с проблемой записи строки символов в бинарный файл, помню с C++, при...

Запись/чтение структуры в бинарный файл
Здравствуйте, не могли бы объяснить, как работать с QDataStream? Читаю документацию и что-то...

5
Почетный модератор
11525 / 4320 / 448
Регистрация: 12.06.2008
Сообщений: 12,412
26.11.2013, 22:53 2
C++ (Qt)
1
2
    for(int i=0; i < count(); i++)
        file.write(&a[i], sizeof(a[i]));
Только непонятно, что за массив и что такое count()
0
0 / 0 / 1
Регистрация: 11.10.2012
Сообщений: 60
26.11.2013, 23:15  [ТС] 3
Цитата Сообщение от Humanoid Посмотреть сообщение
C++ (Qt)
1
2
    for(int i=0; i < count(); i++)
        file.write(&a[i], sizeof(a[i]));
Только непонятно, что за массив и что такое count()
Динамический массив указателей на тип int, а count() функция, возвращающая количество элементов

Добавлено через 13 минут
Humanoid, можно Вас попросить показать на примере, как перевести значения типа инт в массив QByteArray, функция write требует именно этот тип
0
1403 / 1260 / 262
Регистрация: 10.11.2013
Сообщений: 3,763
26.11.2013, 23:21 4
Цитата Сообщение от Bramme Посмотреть сообщение
как перевести значения типа инт в массив QByteArray
C++ (Qt)
1
2
int i = 100;
QByteArray ba = QByteArray::number(i);
1
0 / 0 / 1
Регистрация: 11.10.2012
Сообщений: 60
26.11.2013, 23:44  [ТС] 5
RazrFalcon, а если обратная операция?
0
1403 / 1260 / 262
Регистрация: 10.11.2013
Сообщений: 3,763
27.11.2013, 04:23 6
Первая ссылка вгугле ответит на ваш вопрос.
array.toInt()
0
27.11.2013, 04:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.11.2013, 04:23
Помогаю со студенческими работами здесь

Запись и чтение структуры в бинарный файл
Несмотря на попытку изучения этого вопроса и способов переопределения потокового ввода &gt;&gt; и вывода...

Запись данных в бинарный файл
Мне нужно записать в бинарный файл координаты точек с помощью fwrite и попутно выводить их на...

Запись данных в бинарный файл
Доброго времени суток. Мне нужно закодировать файл, и раскодировать его. Пример: Закодированное...

Запись данных класса в бинарный файл
У меня был просто ввод-вывод в файл, но надо бинарный и мне выдает ошибку: &quot;error 'class...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru