Delphi中如何读取Word中内容(word2000.pas):
(1)读取Word中一般的文字内容
(2)读取Word中表格内的内容 *******

解决方案 »

  1.   

    参考如下的一些文章,你会有收获的:http://www.cx66.com/cxgzs/program/delphi/252.htmhttp://dhome.myrice.com/Tips/DLL&OtherTool/tip01-6.htmhttp://bbs.tencent.com/community/dnwl/10049/60388.shtmlhttp://www.cnread.net/cnread1/dnwl/cxsj/delphi/ztwd/cxyy/039.htm
      

  2.   

    用部件板中Server下的WordApplication,WordDocument
      

  3.   

    好象可以用stream来实现的,如果需要的话,我有源吗
      

  4.   

    var WordApp: TWordApplication;    WordDoc: TWordDocument;
    var DocInx,FileName,CfCversions,oReadOnly,AddToRctFiles,PswDocument,
        PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat: OleVariant;
    begin
        DocInx:=1;
        oFileName := InFile;
        oReadOnly:=true;  WordApp:= TWordApplication.Create(nil);
      WordApp.Visible := false;
      WordDoc:= TWordDocument.Create(nil);
      WordApp.Documents.open(FileName,CfCversions,oReadOnly,AddToRctFiles,PswDocument,
                               PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat);
      WordDoc.ConnectTo(WordApp.Documents.Item(DocInx));  For i := 1 To WordDoc.Tables.Count do   //第 i 个表
      begin
        For iRow := 1 To WordDoc.Tables.Item(i).Rows.Count do
        for iCol:=1 to WordDoc.Tables.Item(i).Columns.Count do
          s:=WordDoc.Tables.Item(i).Cell(iRow,iCol);//取[iRow,iCol]列值
      end;    if Assigned(WordDoc) then
        begin
          WordDoc.Close;
          WordDoc.Disconnect;
          WordDoc.Destroy;
          WordDoc := nil;
        end;    if Assigned(WordApp) then
        begin
          WordApp.Quit;
          WordApp.Disconnect;
          WordApp.Destroy;
          WordApp := nil;
        end;
      
    end;