MXD文件版本批量轉(zhuǎn)換
ArcGIS不同版本的mxd文件不兼容,例如我這里本地使用的是10.1的版本,無法打開10.5版本創(chuàng)建的mxd文件。
如果是較少的mxd文件,可以通過在10.5版本的arcgis中打開,選擇FILE—SAVE A COPY,保存的時候選擇需要保存的版本即可。
那如果有100個mxd文件呢?1000個呢?我這里有接近300個mxd文檔,一個個弄想想就頭大。幸好,arcgis官網(wǎng)提供了相關(guān)批量轉(zhuǎn)換方法,詳見:
為了考慮英文不好的同學(xué),我這里將大概步驟演示一遍:
1、創(chuàng)建txt文件,復(fù)制以下代碼到文件中,并將文件后綴名修改為py。我這里命名為mxdConvert.py
import arcpy, sys, os, string mxdList = string.split(arcpy.GetParameterAsText(0), ";") outloc = arcpy.GetParameterAsText(1) version = arcpy.GetParameterAsText(2) suffix = "_"+ version.replace(".", "") for item in mxdList: item = item.strip('\'') mxd = arcpy.mapping.MapDocument(item) base = os.path.basename(item) base = os.path.splitext(base)[0] + suffix + os.path.splitext(base)[1] mxd.saveACopy(outloc + os.sep + base, version) arcpy.AddMessage(os.path.basename(item) + " has been converted")
2、打開ArcMap或者Catalog,選擇位置右鍵新建toolbox,命名工具箱為mxdConvert
3、在新建的工具箱上右鍵,選擇ADD—Script
4、打開添加Script窗口,輸入名稱以及工具描述信息,點擊下一步;
5、選擇前面建立好的py格式文件;
6、增加參數(shù)信息,參數(shù)一共包括三個:
Input MXDs:設(shè)置datatype為:ArcMap Document under Data Type,在下面的參數(shù)中,設(shè)置MultiValue為YES,這樣可以選擇多個mxd進行處理。
Output Location:設(shè)置datatype為:Workspace
Output Version:設(shè)置datatype為:String,下面屬性中設(shè)置Filter為Value list,Value list輸入可以轉(zhuǎn)換的版本;
7、點擊完成,設(shè)置后如下圖所示,設(shè)置完成后可以雙擊新建的工具進行批量轉(zhuǎn)換了。
8、運行可以看到我們設(shè)置的三個參數(shù),選擇需要轉(zhuǎn)換的mxd文件,設(shè)置好輸出路徑以及轉(zhuǎn)換版本后,點擊執(zhí)行即可。
posted on 2022-12-02 17:51 jingkunliu 閱讀(993) 評論(0) 收藏 舉報











浙公網(wǎng)安備 33010602011771號