我想做一个富文本管理器,注意不是TXT,是RichEdit的文章管理器,从数据库BLOB字段取出数据之后,怎么样编辑,然后又怎么样存回到数据库里去?难道每次都要为每一个文件在硬盘中建立临时文件才能浏览和编辑吗?或者有人说可以使用内存编辑,但是第一我不知道该怎么做,第二如果浏览的文章稍微多一点,岂不是内存马上就不够用了?当然也可以只打开当前的编辑文件,然后立刻关闭。但是这样的效率是不是太低了点??

解决方案 »

  1.   

    RichEdit可以载入stream, 然后你查一下stream的数据库存取方法就ok
      

  2.   

    但是富文本也有一个不好的地方,就是不能使用SQL全文搜索。有什么办法可以解决?
      

  3.   


    2个字段,1个字段保存RTF格式,1个字段保存纯文本,搜索的时候就搜索纯文本即可
      

  4.   

     是否可以共享一个小DEMO ? 
    但是富文本也有一个不好的地方,就是不能使用SQL全文搜索。有什么办法可以解决?2个字段,1个字段保存RTF格式,1个字段保存纯文本,搜索的时候就搜索纯文本即可 这种方式,也不好操作。。
      

  5.   

    2个字段,1个字段保存RTF格式,1个字段保存纯文本,搜索的时候就搜索纯文本即可 这种方式,也不好操作。。
    ------------------------------------------------------------------------------------------------
    操作还好吧, 一个用来检索, 一个用来显示.
    是否可以共享一个小DEMO ?
    ------------------------------------------------------------------------------------------------
    var
      vStream : TStream;
    begin
      vStream := TMemoryStream.Create;
      try
        mmo1.Lines.SaveToStream(vStream);    //富文本存入内存流    //向数据库写记录
        qry1.Append;
        TBlobField(qry1.FieldByName('RTF')).LoadFromStream(vStream);
        qry1.FieldByName('Txt').Value := mmo1.Lines.CommaText;
        qry1.Post;
      finally
        vStream.Free;
      end;
    end;
      

  6.   

    一个存文本,一个存BLOB是不错,但是如果直接存储word文档的话,我怎么才能得到word文档里的文字内容呢?