ArcEngine保存为mxd的方法

来源:互联网 发布:python popen ssh 编辑:程序博客网 时间:2024/05/23 23:36


ArcGIS Engine提供了保存Mxd文件的类MapDoment。但在具体保存MXD文件过程中有下面几种情况:   

1 直接使用IMapDocument接口的Open方法来打开MXD文件,编辑过后进行保存。    
2 使用Engine中带的OpenDocument方法来打开MXD文件,然后编辑过之后要进行保存。    
3 使用自己写的添加数据的工具直接添加数据,也就是说一开始没有MXD文件,在编辑完之后需要把当前的地图保存为一个MXD文件。

过程描述

解决方法:   
首先这三种情况都可以使用Engine中自带的SaveDoument的工具进行保存    
1 这种情况比较简单,直接使用IMapDocument的save或者saveas的方法来进行保存就可以,可以在帮助中查到例子。    
2 这种情况可使用下面的代码进行保存,    
C#:

IMxdContents pMxdC;    
pMxdC = axMapControl1.Map as IMxdContents ;    
IMapDocument pMapDocument = new MapDocumentClass();    
pMapDocument.Open (axMapControl1.DocumentFilename,"");    
IActiveView pActiveView = axMapControl1.Map as IActiveView ;    
pMapDocument.ReplaceContents (pMxdC);    
pMapDocument.SaveAs ("d:\aa2.mxd",true,true);   


3 这种情况使用的代码稍微有点不同:   

C#:
IMxdContents pMxdC;    
pMxdC = axMapControl1.Map as IMxdContents ;    
IMapDocument pMapDocument = new MapDocumentClass ();    
pMapDocument.New ("d:\aa3.mxd");    
IActiveView pActiveView = axMapControl1.Map as IActiveView ;    
pMapDocument.ReplaceContents (pMxdC);    
pMapDocument.Save (true,true);


转:http://blog.csdn.net/chanyinhelv/article/details/8448508

ArcGIS Engine提供了保存Mxd文件的类MapDoment。但在具体保存MXD文件过程中有下面几种情况:   

1 直接使用IMapDocument接口的Open方法来打开MXD文件,编辑过后进行保存。    
2 使用Engine中带的OpenDocument方法来打开MXD文件,然后编辑过之后要进行保存。    
3 使用自己写的添加数据的工具直接添加数据,也就是说一开始没有MXD文件,在编辑完之后需要把当前的地图保存为一个MXD文件。

过程描述

解决方法:   
首先这三种情况都可以使用Engine中自带的SaveDoument的工具进行保存    
1 这种情况比较简单,直接使用IMapDocument的save或者saveas的方法来进行保存就可以,可以在帮助中查到例子。    
2 这种情况可使用下面的代码进行保存,    
C#:

IMxdContents pMxdC;    
pMxdC = axMapControl1.Map as IMxdContents ;    
IMapDocument pMapDocument = new MapDocumentClass();    
pMapDocument.Open (axMapControl1.DocumentFilename,"");    
IActiveView pActiveView = axMapControl1.Map as IActiveView ;    
pMapDocument.ReplaceContents (pMxdC);    
pMapDocument.SaveAs ("d:\aa2.mxd",true,true);   


3 这种情况使用的代码稍微有点不同:   

C#:
IMxdContents pMxdC;    
pMxdC = axMapControl1.Map as IMxdContents ;    
IMapDocument pMapDocument = new MapDocumentClass ();    
pMapDocument.New ("d:\aa3.mxd");    
IActiveView pActiveView = axMapControl1.Map as IActiveView ;    
pMapDocument.ReplaceContents (pMxdC);    
pMapDocument.Save (true,true);

原创粉丝点击