本文是在上文的基礎上繼續進行,給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是直接替換原文件物件,得通過修改操作符...