晕死,定义了一个Stream:TBlobStream;系统居然提示Undeclared identifier:'TBlobStream' 我看好多贴子里都有这样的定义,怎么我就能用,我用的是Delphi,快要疯了,要被Blob+OleContainer折磨死了!!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我用的是delphi6,难道6里不支持???我想实现用olecontainer控件存取word文档,两天来,用了TMemoryStream方法,也用了临时文件方法,都不行,,,,,总是Stream Read Error,难道真的就这么麻烦? 顺便请教一下,TBlobStrea,TStream,TMemoryStream有什么区别,在用于处理BLOB数据的时候各有什么优缺点呢?谢谢!! TStream主要是对基本流的操作TMemoryStream主要是对内存流的操作,也有用于文件的操作TBlobStream主要用于Blob字段的读写操作 我很菜,也解释不清楚,你要多试才能体现这三者之间的差别 //TBlobStream声明在DBTables单元//参考如下代码procedure TForm1.Button1Click(Sender: TObject);begin OleContainer1.SaveAsDocument('c:\temp\temp.doc');end;procedure TForm1.Button2Click(Sender: TObject);type TDocumentHead = packed record rFlag: array[0..7] of Char; rSize: DWORD; end;var vFileStream: TFileStream; vMemoryStream: TMemoryStream; vDocumentHead: TDocumentHead;begin vMemoryStream := TMemoryStream.Create; vFileStream := TFileStream.Create('c:\temp\temp.doc', fmShareDenyNone); try vDocumentHead.rFlag := #$42#$44#$4F#$43#$01#$00#$00#$00; vDocumentHead.rSize := vFileStream.Size; vMemoryStream.Write(vDocumentHead, SizeOf(vDocumentHead)); vMemoryStream.CopyFrom(vFileStream, vFileStream.Size); vMemoryStream.Position := 0; OleContainer2.LoadFromStream(vMemoryStream); finally vMemoryStream.Free; vFileStream.Free; end;end; 请教zswang(伴水清清)(专家门诊清洁工) ,你的这段代码是做什么用的?对不起,我实在太菜了,, 初中数学问题; 控件太多,怎么写可简化代码啊? delphi中除四舍五入函数外,有没有一入的函数? fastReport 2.5 自定义纸张 225*92 ,总是设置不成功? 如何在service中动态创建一个filelistbox? 求助,请教 SQL SERVER 2000 备份的一个小问题,谢谢 ! 如何控制窗体标题栏的高度 帮帮吧/// 求教关于fastreport treeview的小问题。 祝愿天下地女性同胞们节日快乐! 问几个问题!小问题,属于基础的!
我想实现用olecontainer控件存取word文档,两天来,用了TMemoryStream方法,也用了临时文件方法,都不行,,,,,总是Stream Read Error,难道真的就这么麻烦?
TBlobStrea,TStream,TMemoryStream有什么区别,在用于处理BLOB数据的时候各有什么优缺点呢?
谢谢!!
TMemoryStream主要是对内存流的操作,也有用于文件的操作
TBlobStream主要用于Blob字段的读写操作 我很菜,也解释不清楚,你要多试才能体现这三者之间的差别
procedure TForm1.Button1Click(Sender: TObject);
begin
OleContainer1.SaveAsDocument('c:\temp\temp.doc');
end;procedure TForm1.Button2Click(Sender: TObject);
type
TDocumentHead = packed record
rFlag: array[0..7] of Char;
rSize: DWORD;
end;
var
vFileStream: TFileStream;
vMemoryStream: TMemoryStream;
vDocumentHead: TDocumentHead;
begin
vMemoryStream := TMemoryStream.Create;
vFileStream := TFileStream.Create('c:\temp\temp.doc', fmShareDenyNone);
try
vDocumentHead.rFlag := #$42#$44#$4F#$43#$01#$00#$00#$00;
vDocumentHead.rSize := vFileStream.Size;
vMemoryStream.Write(vDocumentHead, SizeOf(vDocumentHead));
vMemoryStream.CopyFrom(vFileStream, vFileStream.Size);
vMemoryStream.Position := 0;
OleContainer2.LoadFromStream(vMemoryStream);
finally
vMemoryStream.Free;
vFileStream.Free;
end;
end;