Текущий архив: 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.48 MB
Время: 0.007 c