Problem: Unicode符号显示为问号,“乱码”或“无意义的符号”

文章编号 : 33265
软件: ArcGIS - ArcEditor 9.2, 9.3, 9.3.1 ArcGIS - ArcInfo 9.2, 9.3, 9.3.1, 10 ArcGIS - ArcView 9.2, 9.3, 9.3.1, 10 ArcGIS Engine Runtime 9.2, 9.3, 9.3.1
操作系统: Windows XP
已邀请:

易智瑞技术支持

赞同来自:

错误信息: 尽管Unicode符号存储在个人地理数据库中并可以在ArcGIS产品中完美显示,但该符号在一些窗口形式控件中却显示为问号,“乱码”或“无意义的符号”文本。如下图:





原因: 用于显示这一符号的窗口形式控件未启用Unicode。众所周知,这在VB 6,VBA和VC++6中也出现过。假设对话框未启用Unicode,以下VBA代码可以再现这一问题。在ArcMap文档中,粘贴代码并根据需要修改代码,以处理您的Unicode测试数据。


Sub Test() Dim pMxDoc As IMxDocument Dim pMap As IMap Set pMxDoc = Application.Document Set pMap = pMxDoc.FocusMap Dim pFeatLayer As IFeatureLayer Set pFeatLayer = pMap.Layer(0) Dim pTable As ITable Set pTable = pFeatLayer Dim pRow As IRow Set pRow = pTable.GetRow(1) theUnicodeText = pRow.Value(2) MsgBox "value= " & theUnicodeText End Sub

字符映射表中,在编辑模式下,可以使用该工具选择并复制Unicode字符到剪切板,以便粘贴到属性表中。



解决方法: 1. 导航到开始>控制面板>区域和语言选项。

2. 单击高级选项卡。

3. 在“非Unicode程序语言”下面的下拉列表中选择合适的语言。




最终结果与下面的屏幕截图类似:








创建时间:2007-07-12
最近更新: 2011-12-06


原文链接
http://support.esrichina.com.c ... .html

要回复问题请先登录注册