MXD文档保存

MXD保存

 1         private void btnSaveMap_Click(object sender, EventArgs e)
 2         {
 3             try
 4             {
 5                 string sMxdFileName = mainMapControl.DocumentFilename;//获取文件名
 6                 IMapDocument pMapDocument = new MapDocument();
 7                 if(sMxdFileName!=null&&mainMapControl.CheckMxFile(sMxdFileName))
 8                 {
 9                     if(pMapDocument.get_IsReadOnly(sMxdFileName))
10                     {
11                        MessageBox.Show("该文档制度","Warning");
12                        pMapDocument.Close();
13                        return;
14                     }
15                     else
16                     {
17                         SaveFileDialog pSaveFileDialog=new SaveFileDialog();
18                         pSaveFileDialog.Title="请选择保存路径";
19                         pSaveFileDialog.OverwritePrompt=true;//获取一个布尔类型值,用来提示当存在文件名时,SaveAs对话框是否显示警告
20                         pSaveFileDialog.Filter="Mxd文档(*.mxd)|*.mxd|ArcMap模板(*.mxt)|.mxt";
21                         pSaveFileDialog.RestoreDirectory=true;//获取一个布尔类型值,用来指示对话框再关闭前是否还原当前目录
22                         if(pSaveFileDialog.ShowDialog()==DialogResult.OK)
23                         {
24                             sMxdFileName =pSaveFileDialog.FileName;//将文件名赋值给sMxdfileName;
25                         }
26                         else
27                         {
28                             return;
29                         }
30                     }
31                     pMapDocument.New(sMxdFileName);//创建并打开一个以sMxdFileName为文件名的mxd文档
32                     pMapDocument.ReplaceContents(mainMapControl.Map as IMxdContents);//利用IMxdContents读取地图文档内容,并使之替换IMapDocment借口的实例对象
33                     pMapDocument.Save(true,true);
34                     pMapDocument.Close();
35                     MessageBox.Show("地图文档保存成功","提示");
36                 }
37             }
38             catch (Exception ex)
39             {
40                 MessageBox.Show(ex.Message);
41             }
42         }

MXD另存

 1  private void btnSaveAsMap_Click(object sender, EventArgs e)
 2         {
 3             try
 4             {
 5                 SaveFileDialog pSfd = new SaveFileDialog();
 6                 pSfd.Title = "另存为";
 7                 pSfd.OverwritePrompt = true;
 8                 pSfd.Filter = "Mxd文档(*.mxd)|*.mxd|ArcMap模板(*.mxt)|.mxt";
 9                 pSfd.RestoreDirectory = true;
10                 if (pSfd.ShowDialog() == DialogResult.OK)
11                 {
12                     string sFilePath = pSfd.FileName;
13                     IMapDocument pMapDoc = new MapDocumentClass();
14                     pMapDoc.New(sFilePath);////创建并打开一个以sFilePath为文件名的mxd文档
15                     pMapDoc.ReplaceContents(mainMapControl.Map as IMxdContents);//利用IMxdContents读取地图文档内容,并使之替换IMapDocment借口的实例对象
16                     pMapDoc.Save(true, true); ;
17                     pMapDoc.Close();
18                 }
19             }
20             catch (Exception ex)
21             {
22                 MessageBox.Show(ex.Message);
23             }
24         }

 总结:

文档的保存和另存用到的接口是ImapDocument,二者本质上没有区别,都需要在保存前判断文件是否存在即可。

时间: 2024-10-11 20:01:55

MXD文档保存的相关文章

AE中保存Mxd文档的几种方式

文档对象主要由IMapdocument和IMxdContents接口完成的.IMapDocument定义了操作和管理文档对象的方法和属性,包括读.写和保存一个文档文件(*.mxd).    public void ReplaceContents (IMxdContents pObject);保存修改: public void Save ( bool bUseRelativePaths,bool bCreateThumnbail); public void SaveAs (string sDocu

(转载)Excel文档保存的时候,提示“文档未保存”

亲测,成功搞定 Excel文档保存的时候,提示“文档未保存”? 先打开你需要处理的excel,然后打开工具栏--宏--录制新宏--确定--停止录制宏--宏-宏--编辑--复制以下程序Sub 恢复保存()     name0 = ActiveWorkbook.Name     j = Sheets.Count     For i = 1 To j         Sheets(1).Visible = -1         Sheets(1).Move         Sheets(1).Move

LoadMxFile方法加载MXD文档

LoadMxFile方法加载MXD文档: private void loadMxFile方法ToolStripMenuItem_Click(object sender, EventArgs e) { //加载数据前如果有数据则清空 try { OpenFileDialog pOpenFileDialog = new OpenFileDialog();//打开文件 pOpenFileDialog.CheckFileExists = true;//判断文件存在 pOpenFileDialog.Tit

如何将arcgis的mxd文档存储为相对路径

在默认情况下,ArcGIS 10中地图文件mxd中添加的图层所引用的文件路径均为绝对路径.这就意味着,如果你在地图中引用了“D:\data\DEM.shp”文件,那map.mxd文件中保存的该层文件路径也为“D:\data\DEM.shp”.这时如果你要将该项目文件转移到其他位置时,即使将整个项目文件夹都复制了,再次打开map.mxd文件时也会出现引用错误的情况. 通过在ArcMap中将mxd文件设置为引用相对路径,则可避免日后项目转移可能面临的问题.对于已有引用绝对路径的mxd文件,也可通过相

博客园文档保存为pdf适合手机kindle阅读

首先使用chrome浏览器,找到相关页面 F12打开命令窗口 输入: var el=$('.post'); $("*").not(el.find('*')).hide(); el.parents().andSelf().css({width:480,padding:0,margin:0,border:'none',float:'none',position:'static'}).show().find('img').css({maxWidth:470,height:'auto'});

文档保存后找不到了误以为丢失,重做!

工单详情,工单列表字段整理! 文件路径:C:\Users\wgs\AppData\Local\Temp\DMS接口.docx

流操作text文件------读取、保存文档

************************************一.读取指定text文档中的内容:**************************************** 方法一. tring path = @"F:\ceshi\ceshi.txt";//定义地址 FileStream stream = new FileStream(path,FileMode.Open);// 打开流文件 byte[] bye = new byte[stream.Length]; st

使用PHP对word文档进行操作的方法

使用php时,因为加密等原因,如果直接用FILE后者OPEN等函数读取WORD的话往往是乱码,原来要使用COM 这是我简单的一个读取并存储到新的WORD上的文件<? // 建立一个指向新COM组件的索引 $word = new COM(”word.application”) or die(”Can't start Word!”); // 显示目前正在使用的Word的版本号 //echo “Loading Word, v. {$word->Version}<br>”; // 把它的可

Java生成word文档

itext-rtf-2.1.7.jar,下载地址:http://download.csdn.net/detail/xuxu198899223/7717727 itext-2.1.7.jar 下载地址:http://download.csdn.net/detail/xuxu198899223/7717717 package word; import java.io.FileOutputStream; import java.io.IOException; import java.util.Arra