delphi初学,遇到以下问题:首先从网上当下来一个文件,存到了OleVariant变量里,是利用一个微软的控件。然后保存成文件,应该是一个二进制文件,我这么写,但是文件只有16个字节。
Res为保存了文件的OleVariant变量FileHandle := FileCreate(filename);
FileWrite(FileHandle, Res, SizeOf(Res));
FileClose(FileHandle);
OleVariant变量的内容绝对没问题,因为如果是文本文件的话,用以下语句可以正确的保存
Assignfile(BTxt,filename);
Rewrite(BTxt);
Write(BTxt,Res);
CloseFile(BTxt);
Res为保存了文件的OleVariant变量FileHandle := FileCreate(filename);
FileWrite(FileHandle, Res, SizeOf(Res));
FileClose(FileHandle);
OleVariant变量的内容绝对没问题,因为如果是文本文件的话,用以下语句可以正确的保存
Assignfile(BTxt,filename);
Rewrite(BTxt);
Write(BTxt,Res);
CloseFile(BTxt);
解决方案 »
- 数据库为Firebird2.5 程序中当SQLDialect为3时,使用FIBDataset,怎么成了只读数据集呢?
- 关于使用内存映射文件的优点
- 如何得到SQLSERVER中的所有数据库,及数据库中的表呀???
- TcxGrid主从表添加记录时出错, 大家来帮忙
- 判断表是否存在,简单问题,可是我不会 (在线等
- 在DBGridEh组件使升降排序标志符(▽降序△升序)为黑色
- 在用Quickreport控件打印报表时,如何控制当报表打印完成后打印机不向前走纸
- 急问:DBEdit对齐问题
- 火急:如何在EXCEL中画线...解决马上给分...
- 进来看一看好吗?谢谢,UP有分啊!在线等待
- 在access中怎样将字符型转成小数型,急等!
- EXCEL查询对比后导入数据库的问题,比较麻烦,出200分求解。
并不是真正的文件内容
它是固定16字节大小的一个特别的HANDLE
Microsoft OLE DB Provider for SQL Server 错误 '80040e31' 超时已过期 /Expert/reply.asp,行105
所以我认为,从OleVariant变量应该是可以写入到一个二进制文件的。
就像写文本文件一样,有一句关键的Write(BTxt,Res);,读了出来,二进制操作应该也有相应的函数吧。
你从这个下手
查一下帮助
看看能不能把 olesteam的内容搞成olevariant的
然后就可以写成文件了