主页
Top.Mail.Ru Yandeks.Metrika
论坛:“主要”;
当前存档:2002.07.29;
下载:[xml.tar.bz2];

向下

如何在一个文件中保存一堆异构信息 找到类似的分支


Andrushk   (2002-07-15 16:16) [0]

Мне необходимо держать в одном файле разнотипную информацию, которая, скажем, характеризует некоторый отчет: строки, числа, графику(скажем в jpg-формате), зашибись было бы вклеить туда же xls-ку, есть ли в Делфях для этого стандартные средства, или может какие компоненты?



olookin   (2002-07-15 16:35) [1]

Писать в нетипизированную переменную (file).



Viewer   (2002-07-15 16:37) [2]

Почти любая СУБД и соответсвующие поля при N-ом кол-ве отчетов



Дмитрий Баранов   (2002-07-15 16:37) [3]

1) XML
2) Составные хранилища (COM) - см. StgCreateDocfile, IStream и т.п. в MSDN



valery_f   (2002-07-15 16:41) [4]

> ...есть ли в Делфях для этого стандартные средства, или может какие компоненты?

Ну, скажем, можно предварять каждый блок файла заголовком - тип блока и его длина (можно дополнять флагами, именами и пр.). Тогда при последовательной выборке ты можешь извлечь интересующий тебя кусок в отдельное место и соответственно обработать. Для выборки/сохранения отдельных кусков я использовал TMemoryStream (очень удобно, т.к. куча контейнеров имеет методы LoadFromStream/SaveToStream), а собственно работа с файлом - через TFileStream.



Дмитрий Баранов   (2002-07-15 16:49) [5]

"Не надо ничего придумывать - все уже до нас придумано" :)
Большинство грамотных программ (вроде офиса ;) работают через СОМ-ориентированные хранилища. А то еще флаги всякие :)



Andrushk   (2002-07-15 17:04) [6]

а где почитать про эти COM-ориентированные хранилища? и конкретно про то как ими пользоваться из Delph"ей, увидеть пример было бы просто зашибись :-)



Дмитрий Баранов   (2002-07-15 17:09) [7]

На мыло вышлю?



Andrushk   (2002-07-15 17:10) [8]

ок, это было бы просто зашибись



Yuri-7   (2002-07-15 17:16) [9]

Stream-ы, конечно, хорошо использовать, но у тебя ведь файлы надо хранить. Попоробуй использовать такую "игрушку" - kbmMemoryTable - это таблица в памяти. Не требует BDE, сделаешь несколько полей описания информации и BLOB поле - в нем будешь хранить все, что угодно. Сохранять удобно в Binary формате, довольно плотно хранит. Можно проиндексировать и искать потом удобно.



Andrushk   (2002-07-15 17:23) [10]

А что это за kbmMemoryTable? и если она не требует BDE, то чего тогда она требует? и в формате какой СУБД хранит данные?



Yuri-7   (2002-07-15 17:43) [11]

>Andrushk (15.07.02 17:23)
Ничего она не требует и хранит все в собственном формате.
На torry.net на днях было последнее обновление.



Andrushk   (2002-07-15 17:52) [12]

>Yuri-7 (15.07.02 17:43)
а как найти "kbmMemoryTable" побыстрей бы? а то я там в поиске набрал kbmMemoryTable - а нефига не ищется



Yuri-7   (2002-07-15 18:13) [13]

>Andrushk (15.07.02 17:52)
Попоробуй kbmmemtable



Yuri-7   (2002-07-15 18:13) [14]

>Andrushk (15.07.02 17:52)
Попоробуй kbmmemtable или TkbmMemTable или TkbmMemoryTable



Yuri-7   (2002-07-15 18:24) [15]

Открой на torry search и в search ZIP/EXE набери kbmmemtab



Страницы: 1 整个分支

论坛:“主要”;
当前存档:2002.07.29;
下载:[xml.tar.bz2];

楼上









内存:0.6 MB
时间:0.026 c
14-95554
MetalFan
2002-07-03 12:08
2002.07.29
什么样的档案?


1-95345
Ruslan0001
2002-07-18 11:23
2002.07.29
有更准确的计时器


3-95240
zombi_71
2002-07-08 11:57
2002.07.29
unix命令


1-95384

2002-07-15 11:42
2002.07.29
创建


14-95535
KIR
2002-07-03 14:03
2002.07.29
关于InstallShield的问题





南非荷兰语 阿尔巴尼亚人 阿拉伯语 亚美尼亚 阿塞拜疆 巴斯克 白俄罗斯 保加利亚语 加泰罗尼亚 简体中文 中国(繁体) 克罗地亚 捷克 丹麦语 荷兰人 英语 爱沙尼亚语 菲律宾人 芬兰 法文
加利亚西语 格鲁吉亚语 德语 希腊语 海地克里奥尔语 希伯来语 印地语 匈牙利 北日耳曼语 印度尼西亚人 爱尔兰语 意大利语 日本性玩偶 韩语 拉脱维亚 立陶宛 马其顿 马来语 马耳他语 挪威语
波斯语 波兰语 葡萄牙语 罗马尼亚 俄语 塞尔维亚 斯洛伐克 斯洛文尼亚 西班牙语 斯瓦希里 瑞典语 泰国人 土耳其 乌克兰 乌尔都语 越南人 威尔士语 意第绪语 孟加拉 波斯尼亚
宿务 世界语 古吉拉特语 豪萨语 苗族 伊博 爪哇 卡纳达语 高棉 老挝 拉丁语 毛利 马拉 蒙古人 尼泊尔 旁遮普 索马里 泰米尔人 泰卢固语 约鲁巴语
祖鲁
英文 Французский Немецкий Итальянский Португальский 俄文 Испанский