设为首页 加入收藏

TOP

ArcMap中使用Python遇到中文字段名错误的解决方法
2014-11-24 11:25:08 来源: 作者: 【 】 浏览:0
Tags:ArcMap 使用 Python 遇到 文字 段名 错误 解决 方法

前一段时间遇到一个客户需要在ArcMap中批量的通过等高线图生成DEM,但是等高线图中的高程字段名称全部是中文,大家都知道Python遇到中文就会出现各种诡异状况,于是我被用户找去解决问题。


先看看Python的版本,是2.6.5,比用户的2.5.1要高,不知道这个问题能不能在自己电脑上重现。


[图1]


好了,创建一个ChineseTest.py,内容如下:


[图2]


测试一下,结果:


[图3]


好吧,悲剧了,自己电脑上的版本比用户高,没法重现这个错误,只能到现场去解决了。


到用户现场,用上面的同样方式输出“中文”两个字,出现问题:


[图4]


嗯,先把编码方式换成Utf-8尝试下:



错误依旧……



既然它提供了网址,那就看看吧。简单地浏览一下,终于知道如果文件里有非ASCII字符,需要在第一行或第二行指定编码声明。把ChineseTest.py文件的编码重新改为ANSI,并加上编码声明:


[图6]


实验结果出来了:


[图7]


很好,成果喜人,接着就是用这个方式来代替我们在高程字段中使用的中文字符。


[图8]


结果依然悲剧,报取不到这个字段(因为没有用户数据,无法在这里给大家截图看了)。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇关于Java读写速度的考证 下一篇Linux下测试main函数的参数意义

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Python 数据分析与可 (2025-12-26 21:51:20)
·从零开始学Python之 (2025-12-26 21:51:17)
·超长干货:Python实 (2025-12-26 21:51:14)
·为什么 Java 社区至 (2025-12-26 21:19:10)
·Java多线程阻塞队列 (2025-12-26 21:19:07)