MXD文件操作(二) 修改MXD文件資料來源

2021-08-07 01:50:53 字數 1812 閱讀 3396

本文是在上文的基礎上繼續進行,給shp檔案圖層、raster圖層、dwg檔案(cad)圖層重設資料來源。

imapdocument mapdoc =

new mapdocumentclass();

mapdoc.open(mxdpath);

imap pmap = mapdoc.get_map(0);

list

<

string

>

list

= getmxdlayerinfo(mxdpath);//獲取所有圖層的資料來源資訊

string extention = system.io.path.getextension(item);

idatasourcehelpermapdocument repairment =

new datasourcehelperclass();

//if(extention.equals(".shp"))

string layername = system.io.path.getfilenamewithoutextension(item);//item為list中的一項

ilayer player = getlayerbyname(layername, pmap);

if (player != null)

}///

/// 通過圖層名從imap中獲取指定圖層ilayer

//////

圖層名///

///private ilayer getlayerbyname(string layername, imap pmap)

} else

if (player.name == layername)

}return layer;

}///

/// 從圖層組中獲取指定圖層名的圖層

//////

圖層名///

圖層組///

private ilayer getsublayer(string layername, icompositelayer compositelayer)

} else

if (player2.name.equals(layername))

}return mlayer;

}

string layername = system.io

.path

.getfilename(item);

ilayer player = getlayerbyname(layername, pmap);

if (player != null)

icompositelayer player = getgrouplayerbyname(filename, pmap);

if (player != null)

////// 根據圖層名獲取指定圖層組

//////

圖層名///

///private icompositelayer getgrouplayerbyname(string layername, imap pmap) ";

ienumlayer penumlayer = getlayers(grouplayeruid, pmap);

ilayer mlayer = penumlayer.next();

while (mlayer != null) else

}mlayer = penumlayer.next();

}return complayer;

}

Linux 系統檢視 mxd文件

一直以為 mxd文件只能在 window 上配好傳到 linux 下,然後通過 arcgis server manager 發布服務。至於在 linux 下資料來源是否丟失都無法查證,只能看發布的服務正不正常來看了。原來在 linux 版的arcgis server 中提供了乙個小工具 mapedi...

python 文件操作 Python文件操作

最近在網課中學習了python的文件操作,所以把老師上課講的都記錄了下來,作為筆記 開啟文件 可直接使用open函式,使用形式為1open 文件位址,操作形式 操作形式有以下幾個1 7r 唯讀模式 w 覆蓋寫模式 x 建立寫模式 a 追加寫模式 b 二進位制文件模式 t 文字文件模式 與r w x ...

MongoDB修改文件

regex正則操作符 運算子作用 inc 自增 rename 重新命名 set 修改屬性 新增屬性 unset 刪除屬性 min 先和設定的值比較,將較小的值保留 max 先和設定的值比較,將較大的值保留 將id為1的文件修改年齡為40 需要注意的是update是直接替換原文件物件,得通過修改操作符...