ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Delphi与Word(三)取得Word文件的数据 (转)

Delphi与Word(三)取得Word文件的数据 (转)

原创 Linux操作系统 作者:amyz 时间:2007-08-15 15:46:25 0 删除 编辑
Delphi与Word(三)取得Word文件的数据 (转)[@more@]

//取得word文件的数据
procedure getWordStr;
var WordApp: TWordApplication;
  WordDoc: TWordDocument;
  DocInx,oFileName,CfCversions,oReadOnly,AddToRctFiles,PswDocument,
  PswTemplate,oRevert,WPSwDocument,WPswTemplate,oFormat: OleVariant;
  i,iRow,iCol:integer;
  myCell:Cell;
  myRow:Row;
begin
  memo1.Lines.Clear ;

  // ===== 创建对象 =====
  if not Assigned(WordApp) then 
  begin
  WordApp:= TWordApplication.Create(nil);
  WordApp.Visible := false;
  end;
  if not Assigned(WordDoc) then
  WordDoc:= TWordDocument.Create(nil);
  try
  DocInx:=1;
  oFileName := 'd: est.doc';
  oReadOnly:=true;
  CfCversions := EmptyParam;
  AddToRctFiles:= EmptyParam;
  PswDocument:= EmptyParam;
  PswTemplate:= EmptyParam;
  oRevert:= EmptyParam;
  WPswDocument:= EmptyParam;
  WPswTemplate:= EmptyParam;
  oFormat:= EmptyParam; 
  // ===== 打开文件 ===== 
  WordApp.Documents.open(oFileName,CfCversions,oReadOnly,AddToRctFiles,
  PswDocument,PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat);
  // ===== 关联文件 =====
  WordDoc.ConnectTo(WordApp.Documents.Item(DocInx));


  //方法(1): 取整个文本的字符内容,包含表格
  s := WordDoc.Range.text; 

  //方法(2): 取 1 -- 4 位的字符 ,包含表格
  myRange:=WordDoc.Range;
  myRange.Start:=0;
  myRange.End_ :=4;

  finally
  if Assigned(WordDoc) then  // ===== 关闭文件 =====
  begin
  WordDoc.Close;
  WordDoc.DiSCOnnect;
  WordDoc.Destroy;
  WordDoc := nil;
  end;
  if Assigned(WordApp) then  // ===== 关闭Word =====
  begin
  WordApp.Quit;
  WordApp.Disconnect;
  WordApp.Destroy;
  WordApp := nil;
  end;
  end;
end;


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10752019/viewspace-958541/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    3982
  • 访问量
    7895803