 |
Цитата: |
 |
|
|
|
|
|
|
|
|
|
|
Так а зачем ты делаешь создание потока файла в цикле?! Вынеси его за цикл и пиши сколько хочешь записей!
|
|
 |
|
 |
|
Да вроде все я разобрался как сделать, вот код:
Код:
dm.ADOTable.First;
FS:=TFileStream.Create( 'File.doc', fmCreate);
while not dm.ADOTable.Eof do
begin
BlobStream := TADOBlobStream.Create(TBlobField(dm.ADOTable.FieldByName('RTFText')), bmRead);
BlobStream.Seek(0, soFromBeginning);
FS.Seek(0, soFromEnd);
FS.WriteBuffer(BlobStream.Memory^, BlobStream.Size);
FS.WriteBuffer(Buf[1], Length(Buf));
dm.ADOTable.Next;
end;
Но если потом открыть этот созданный файл в ворде то он покажет всего лишь одну запись - первую так как при выводе в файл каждая запись содержит заголовок RTF формата:
Код:
{\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fnil\fcharset204 MS Sans Serif;}{\f1\fswiss\fcharset0 Tahoma;}{\f2\fnil MS Sans Serif;}}
{\colortbl ;\red0\green0\blue0;}
\viewkind4\uc1\pard\cf1\f0\fs24\'ee\'e1\'fa\'ff\'e2\'e0 2 \'e8\'e2\'e0\'ed\'ee\'e2\'e0\lang1033\f1 dgfg\lang1049\f2
\par }
{\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fswiss\fcharset0 Tahoma;}{\f1\fnil MS Sans Serif;}}
{\colortbl ;\red255\green0\blue0;\red0\green0\blue0;}
\viewkind4\uc1\pard\cf1\lang1033\f0\fs24 werwe rwe rq rqwe rqwe rw r\cf2\lang1049\f1
\par }
Вообщем нужно наверное как то подругому сохранять в файл, наверное придеться пробывать через OLE, вот только не знаю останется ли форматирование текста как изначально в набрано в RichEdit?