当前位置: 首页 > news >正文

日本樱花云服务器网站推荐互联网宣传推广

日本樱花云服务器网站推荐,互联网宣传推广,cc域名做网站怎么样,wordpress 所有文章在我工作中遇到的大多数图斑,字段名称一般是英文,字段别名是中文,使用起来是比较方便的。 但有时候也会遇到一些不一样的情况,不知是经过了怎样的处理,图斑的字段别名被修改成了和字段名称一样的英文,这样…

在我工作中遇到的大多数图斑,字段名称一般是英文,字段别名是中文,使用起来是比较方便的。

但有时候也会遇到一些不一样的情况,不知是经过了怎样的处理,图斑的字段别名被修改成了和字段名称一样的英文,这样就很理解字段名称的意思,特别是其它专业、不熟悉的图斑,就很麻烦。

这个工具目的就是要将字段别名恢复成中文。

当然也不可能凭空恢复,需要准备一个字段名称和字段别名的对照表。

所以这一般适用于一些规定格式的图斑,有规范明确规定字段名称和字段别名,对照表可以从规范里直接扒下来。


一、要实现的功能

 

如上图所示,在【字段处理】组—【字段综合】面板下,点击【更新字段别名(属性映射)】工具。

在弹出的工具框中,分别输入参数:

1、输入要修改字段别名的要素图层和独立表。

2、输入准备好的对照表,如下图所示:

生成结果如下:


二、实现流程

实现功能只需要3步。

第一步从Excel表中获取对照表,存成字典即可。

// 从Excel文件中获取Dictionary
public static Dictionary<string, string> GetDictFromExcel(string excelPath, int col1 = 1, int col2 = 2)
{// 建立 Excel 应用程序对象Application excelApp = new Application();// 获取Excel文件名和表名List<string> files = DecomposeExcel(excelPath);string excel_name = files[0];string sheet_name = files[1];// 定义字典Dictionary<string, string> dict = new Dictionary<string, string>();// 打开 Excel 文件Workbook workbook = excelApp.Workbooks.Open(excel_name);// 获取工作表Worksheet worksheet = workbook.Worksheets[sheet_name];// 获取Excel表格中的数据for (int row = 1; row <= worksheet.UsedRange.Rows.Count; row++){var key_va = worksheet.Cells[row, col1].Value;var value_va = worksheet.Cells[row, col2].Value;if (key_va is null || value_va is null){continue;}string key = key_va.ToString();string value = value_va.ToString();// 如果是新值,则纳入dictif (!dict.ContainsKey(key)){dict.Add(key, value);}}//  保存并关闭 Excel 文件和应用程序对象workbook.Close(true);excelApp.Quit();// 返回dictreturn dict;
}

第二步获取要素图层或表中的所有字段。

// 从图层获取字段FieldDescription列表
public static List<FieldDescription> GetFieldsFromLayer(string fcPath)
{List<FieldDescription> fields = new List<FieldDescription>();// 根据图层名找到当前图层var map = MapView.Active.Map;var init_featurelayer = map.FindLayers(fcPath);var init_table = map.FindStandaloneTables(fcPath);// 判断当前选择的是要素图层还是独立表if (init_table.Count > 0){// 是独立表的情况StandaloneTable init_layer = map.FindStandaloneTables(fcPath)[0];fields = init_layer.GetFieldDescriptions();}else if (init_featurelayer.Count > 0){// 是要素图层的情况FeatureLayer init_layer = map.FindLayers(fcPath)[0] as FeatureLayer;fields = init_layer.GetFieldDescriptions();}return fields;
}

第三步按照对照表,对字段别名一一修改即可。

// 更改字段别名
foreach (var field in fields)
{string fieldName = field.Name;if (dic.ContainsKey(fieldName)){pw.AddProcessMessage(2, time_base, @$"更改字段别名:{fieldName}");// 更改字段Arcpy.AlterField(input_fc, fieldName, fieldName, dic[fieldName]);}
}

以上便实现了工具的主要功能。


三、工具文件分享

我把工具都集合成工具箱,不再单独放单个工具,可以到这里下载完整工具箱,会不断更新:

【ArcGIS Pro二次开发】:CC工具箱https://blog.csdn.net/xcc34452366/article/details/131506345PS:可以直接点击...bin\Debug\net6.0-windows\下的.esriAddinX文件直接安装。

http://www.tj-hxxt.cn/news/48166.html

相关文章:

  • 北京想象力网站建设在线外链
  • 厦门网站建设哪家公司好爱上链外链购买交易
  • 做自己的网站流量怎么百度广告费用
  • 校园论坛网站怎么做专业seo培训学校
  • 福州专业做网站sem账户托管外包
  • 制作网站需要哪些工作it培训机构怎么样
  • 企业网站优化的方式sem运营
  • 怎么用宝塔做网站seo做什么网站赚钱
  • 中移建设有限公司网站b站推广入口2023
  • 网站开发快速盈利南宁seo标准
  • 电子商务网站开发的视频谷歌独立站seo
  • 大连工业大学考研哈尔滨关键词优化方式
  • 专门做肥料外贸的网站百度广告投放价格表
  • 北京市建委网站打不开网络营销制度课完整版
  • 佛山有什么网站提供搜索引擎优化公司
  • 网站建设宣传文案seo培训教程
  • 芜湖哪里有做网站的百度客服转人工
  • 广州知名的网站建设公司app开发
  • 铁路建设监理协会网站培训心得体会范文大全1000
  • 佛山外贸网站建设怎么在网上推广广告
  • 哪个网站做农产品最近三天的新闻大事小学生
  • 网站建设入驻百度收录申请
  • php 手机网站开发教程信阳网站推广公司
  • 做网站的计划巨量引擎广告投放平台代理
  • 一个网站怎么做软件百度收录提交工具
  • 网站彩票做号seo就业前景如何
  • 黄埔网站建设设计常见的营销型网站
  • 长沙市建设局官方网站百度经验悬赏任务平台
  • 赚钱网站游戏全国疫情最新情报
  • 建设银行银行官网网站公众号运营