Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.09;
Скачать: CL | DM;

Вниз

Как содержимое поля BLOB перенести в файл *.doc или *.xls   Найти похожие ветки 

 
Nadine   (2002-11-29 12:21) [0]

Такая проблема: файл, например, WORD сохраняется в поле BLOB, если потом создаю из этого поля новый файл *.doc, то в WORDе просмотреть его не могу. Если создаю файл *.txt, то в блокноте просматривается. Новый файл создаю так
var
FS: TFileStream;
...
TBlobField(...).SaveToStream(FS);
Если кто знает как все это делать, помогите, пожалуйста.


 
Карелин Артем ©   (2002-11-29 12:27) [1]

TBlobField(...).SaveToFile пробовал??


 
FreeLancer ©   (2002-11-29 12:33) [2]

Файл должен сохраняться в BLOB в бинарном виде.


 
Nadine   (2002-11-29 12:35) [3]

Да. Тот же самый результат.


 
Nadine   (2002-11-29 12:36) [4]

Объясните, пожалуйста, что зачит в бинарном виде?


 
Карелин Артем ©   (2002-11-29 12:37) [5]

Значит записываешь неправильно.


 
Skier ©   (2002-11-29 12:37) [6]

>Nadine

> WORD сохраняется в поле BLOB

Покажи как сохраняется...


 
FreeLancer ©   (2002-11-29 12:38) [7]

Ну, в Interbase, к примеру, существуют по кр. мере два вида BLOB"ов - текстовый и бинарный


 
Nadine   (2002-11-29 12:45) [8]

У меня база на Оракле.
>Skier
Сохраняю вот так:
var
FromFile: TFileStream;
begin
try
FromFile:=TFileStream.Create(Edit1.Text,fmOpenRead);
FromFile.Seek(0, soFromBeginning);
if Table1.Database <> nil then
begin
Table1.Database.StartTransaction;
Table1.Insert;
Table1.FieldByName("dateRep").AsDateTime:=Now;
Table1.FieldByName("NameRep").AsString:=Edit1.Text;
Table1.FieldByName("ExtRep").AsString:=RightStr(Edit1.Text,3);
TBlobField(Table1.FieldByName("BlobData")).LoadFromStream(FromFile);
Table1.Post;
Table1.Database.Commit;
end;
finally
FromFile.Free;
end;


 
Skier ©   (2002-11-29 12:54) [9]

>Nadine
Так не поможет : ?



begin
try
if Table1.Database <> nil then
begin
Table1.Database.StartTransaction;
Table1.Insert;
Table1.FieldByName("dateRep").AsDateTime:=Now;
Table1.FieldByName("NameRep").AsString:=Edit1.Text;
Table1.FieldByName("ExtRep").AsString:=RightStr(Edit1.Text,3);
TBlobField(Table1.FieldByName("BlobData")).LoadFromFile(Edit1.Text)(FromFile);
Table1.Post;
Table1.Database.Commit;
end;

end;



 
Skier ©   (2002-11-29 12:55) [10]

>Nadine
Ойк ! Опечатка:)
TBlobField(Table1.FieldByName("BlobData")).LoadFromFile(Edit1.Text);


 
Nadine   (2002-11-29 13:10) [11]

>Skier
Не помогает.


 
Skier ©   (2002-11-29 13:12) [12]

>Nadine
А размеры загруженного и сохранённого файла совпадают ?


 
Nadine   (2002-11-29 13:17) [13]

>Skier
Да, полностью совпадают.


 
FreeLancer ©   (2002-11-29 13:20) [14]

Что говорит Word?


 
Nadine   (2002-11-29 13:45) [15]

Когда создается файл с помощью TFileStream, в WORDе он нормально открывается, виден чистый лист. После загрузки данных, при открытии файла, дословно говорит:
Неверно указаны имя документа или путь к нему. Попробуйте выполнить след. действия:
* Проверьте разрешения на доступ к документу и диску.
* Для поиска документа воспользуйтесь окном "Открытие документа".


 
FreeLancer ©   (2002-11-29 13:48) [16]


> Когда создается файл с помощью TFileStream, в WORDе он нормально
> открывается, виден чистый лист. После загрузки данных, при
> открытии файла, дословно говорит:
> Неверно указаны имя документа или путь к нему. Попробуйте
> выполнить след. действия:
> * Проверьте разрешения на доступ к документу и диску.
> * Для поиска документа воспользуйтесь окном "Открытие документа".

Дорогая моя, так он просто файл не находит? Имя файла - в ".


 
Skier ©   (2002-11-29 13:48) [17]

>Nadine

> Неверно указаны имя документа или путь к нему.

Ну так проветь путь и имя файла.
(Например через FileExists(...) )
В общем посмотри внимательно куда сохраняешь, какое имя файла и
какое расширение...



Страницы: 1 вся ветка

Текущий архив: 2002.12.09;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.023 c
3-27889
Boriz
2002-11-21 15:48
2002.12.09
Требуется динамически создать Calculated поле


14-28223
Shadow
2002-11-16 20:44
2002.12.09
Способы подавления депрессии?


1-27972
Pumba
2002-11-29 14:08
2002.12.09
Олимпиадная задача


7-28307
Senka
2002-10-04 15:58
2002.12.09
Как выполнить учет печати на принтере в Delphi6


6-28190
acid_v
2002-10-11 18:25
2002.12.09
Как определить имя пользователя на удаленном компьютере ?..