其实很简单,要充分利用memorystream. 一存储text字段为例 1.如何进行存储? var ms:TmemoryStream; ms:=TMemoryStream .Create ; {将richedit的内容读取到内存流,并能存储} Frmtongzhi.Editor.Lines.SaveToStream(ms); ms.Seek(0,soFromBeginning ); with tbl_tongzhi do begin Edit; FieldByName('djtime').AsDateTime :=Frmtongzhi.bdate.date ; FieldByName('endtime').AsDateTime :=Frmtongzhi.edate.date; FieldByName('toall').AsBoolean :=Frmtongzhi.chk_all.Checked ; FieldByName('status').AsInteger :=Frmtongzhi.e_1.ItemIndex ; FieldByName('myouter').AsString :=var_Loginid ; FieldByName('mytitle').AsString :=Frmtongzhi.e_title.Text ; {将richedit的内容读取到内存流,并能存储} FieldByName('mycontent').LoadFromStream(ms); FieldByName('tocangku').AsString :=Frmtongzhi.lst_ID.EditValue ; Post; ApplyUpdates; end; ms.Free ; end; 2.如何显示存储的结果? var ms:TmemoryStream; begin richedit.Lines.Clear ; {如何从数据表格读取内存流图片或者是文档并显示} ms:=TMemoryStream .Create ; {将数据字段的内容写入内存流} tbl_tongzhi .FieldByName('mycontent').SaveToStream(ms); {注意将内存流的读取指针放到开始位置} ms.Seek(0,soFromBeginning ) ; richedit.Lines.LoadFromStream(ms); ms.Free ; end;