1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 读取DWG文件中的文本信息(CAD)

读取DWG文件中的文本信息(CAD)

时间:2023-04-22 20:08:05

相关推荐

读取DWG文件中的文本信息(CAD)

还是那句话,工作需要,不然是不会研究这个的.也许有的人会遇到跟我一样的问题,有兴趣看看,可以节约点时间.运行时要引用CAD的COM,这种读取文本的方式并不好,需要机器上装有AUTOCAD,而且针对不同的版本,程序可能要进行修改,如果有朋友能有比较好的解决方法,或者第三方控件,欢迎联系.下面将代码贴上:

1usingSystem;

2usingSystem.Collections.Generic;

3usingSystem.Text;

4usingSystem.IO;

5

6namespaceAutoCADFilter

7{

8publicclassFilter

9{

10publicFilter()

11{

12

13}

14/**////<summary>

15///读取dwg文件中的文本信息

16///</summary>

17///<remarks>读取dwg文件中的文本信息</remarks>

18///<returns>文本内容</returns>

19privatestringReadDwg(stringpath)

20{

21

22stringcontent="";

23stringfilename="";

24FileInfofinfo=newFileInfo(path);

25filename=finfo.Name;

26AutoCAD.AcadApplicationap=newAutoCAD.AcadApplication();

27lock(ap)

28{

29try

30{

31AutoCAD.AcadDocumentad=ap.Documents.Open(path,true,null);

32for(inti=0;i<ad.ModelSpace.Count;i++)

33{

34if(ad.ModelSpace.Item(i).ObjectName.ToLower().Equals("acdbmtext"))

35{

36AutoCAD.IAcadMTextim=(AutoCAD.IAcadMText)ad.ModelSpace.Item(i);

37content+=im.TextString;

38}

39elseif(ad.ModelSpace.Item(i).ObjectName.ToLower().Equals("acdbtext"))

40{

41AutoCAD.IAcadTextim=(AutoCAD.IAcadText)ad.ModelSpace.Item(i);

42content+=im.TextString;

43}

44}

45ad.Close(false,filename);

46}

47finally

48{

49

50ap.Quit();

51}

52}

53returncontent;

54}

55

56publicstringParse(stringpath)

57{

58returnReadDwg(path);

59

60}

61}

62}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。