Vini74 |
Отправлено: 14.11.2006, 12:33 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 3
|
Имеем: CB6 ADO MSDE 2000
В BLOB-ах хранятся вещественные числа типа float (формат IEEE, размер 4 байта),
С точки зрения языка С, то что записано в массиве это следующее:
float arWave[8192];
то есть просто (memcpy( arWave, &BLOB, sizeof(arWave) ) и используем.
Так вот вопрос! Как загрузить BLOB в память, что бы можно было потом через memcpy скопировать массив данных в массив для дальнейшего использования? |
|
Valdemar |
Отправлено: 14.11.2006, 12:49 |
|
Мастер участка
Группа: Участник
Сообщений: 433
|
Используйте TBlobField::SaveToStream
Отредактировано Valdemar — 14.11.2006, 12:53 |
|
Vini74 |
Отправлено: 14.11.2006, 13:03 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 3
|
То что это можно использовать — оно понятно....
А что потом с этим стримом делать????
Есть у нас TmemoStream, но в каком виде там все хранится?
как получить указатель на данные? как сделать memcpy?
Отредактировано Vini74 — 14.11.2006, 13:16 |
|
Valdemar |
Отправлено: 14.11.2006, 13:20 |
|
Мастер участка
Группа: Участник
Сообщений: 433
|
У TMemoryStream есть метод ReadBuffer, который записывает данные из потока в буфер. |
|
Vini74 |
Отправлено: 14.11.2006, 13:34 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 3
|
Да, спасибо... Слона то я и не заметил... |
|