关于对word文件和数据存储的处理?(100分)

  • 主题发起人 主题发起人 wljcr
  • 开始时间 开始时间
W

wljcr

Unregistered / Unconfirmed
GUEST, unregistred user!
我想把word文件内容读取出来存放到数据库中(sql sever),然后我想不用word打印出来,用
quickRep打印出来,还有对word文件内容可以进行查询时浏览,我应该怎么做,怎么把word中的内容
存放到数据库中,然后通过什么可以显示出来,并且可以进行打印??
我有一段程序是这个样子的:
procedure TForm1.Button1Click(Sender: TObject);
var
MemSize: Integer;
Buffer: PChar;
MyFile: TFileStream;
Stream: TBlobStream;
begin
OpenDialog1.Filter:='WORD文档(*.DOC)|*.DOC';{从对话窗选择文件}
if OpenDialog1.Execute then
begin
MyFile:=TFileStream.Create(OpenDialog1.FileName ,fmOpenRead);
with table2 do
{‘table2’为含BLOB字段的表名}
begin
//Open;
Edit;
Stream := TBlobStream.Create(Fieldbyname('content')as TBlobField, bmWrite);{‘content’为BLOB字段名}
MemSize := MyFile.Size;
Inc(MemSize);
{Make room for the buffer's nullterminator.}
Buffer := AllocMem(MemSize);
{Allocate thememory.}
try
Stream.Seek(0, soFrombegin
ning);
{Seek 0 bytesfrom the stream's end point}
MyFile.Read(Buffer^,MemSize);
Stream.Write(Buffer^,MemSize);
finally
MyFile.Free;
Stream.Free;
end;
try
Post;
except
on E: EDatabaseErrordo
if application.HandleException(E) <> 0 then
exit
else
raise;
end;
end;
do
c_ole.CreateObjectFromFile(OpenDialog1.FileName,False);
do
c_ole.Run;{Doc_ole为ToleContainer构件名}
end;
end;
请各位大虾指教一二!
 
高手在哪里呀?
 
大富翁论坛上没有高手!!!!!
 
以前对word的讨论很多,你应该先看看已答问题。
读WORD的内容不难,但要区分开,分类存入数据库却不很容易,因为文档的格式很复杂,最好
是根据具体内容讨论。
 
我去看看!
 
to wljcr:
看了好几个月,可有结果出来?
 
结果是有了。不过就是太麻烦了。你有没有简单一点的
 
不知道要给谁家分?
 
可以用Delphi的TWordApplication和TWordDocuent搞定。可以实现全文和特定文字的查询。
如果感兴趣去看office的在线帮助吧。Word的paragraph是通过回车符来划分的,这很重要,
通过这一点,你就可以分割整个word文档,把每个paragraph送给一个字符串,可以实现逐个文字的扫描。
怎么样,够细了吧,可以解剖Word。
 
多人接受答案了。
 
后退
顶部