碰到一个比较奇怪的情况,在同一系统下(Vista SP2),同一个文件,用UE打开是乱码(¿ªʼʱ¼⋊),而用记事本打开正常(开始时间),这是一种什么情况?
分析:
我们假设在两种方式打开前,文件的编码是一致的,而种种迹象表明测试机上UE是用utf-8来解码的(可以测试证明,用记事本打开该文件,另存为utf-8,再用UE将另存后文件打开,显示正常,不再是乱码),记事本是用什么解码尚不明确,
"¿ªʼʱ¼⋊
"的utf-8编码是:
[-62, -65, -62, -86, -54, -68, -54, -79, -62, -68, -30, -117, -118]
转换成16进制表示:
C2 BF C2 AA CA BC CA B1 C2 BC E2 8B 8A
但是这编码和"开始时间
"又有什么联系呢?
再看"开始时间
"的gbk编码:
[-65, -86, -54, -68, -54, -79, -68, -28]
转换成16进制表示:
BF AA CA BC CA B1 BC E4
看似有一定联系,但一下又找不到明确的关联~可能是编码有问题~
基本确定原因是UE中有一个配置项是自动检测UTF-8文件,如果被UE判断为该文件是UTF-8,那么该文件中包含的汉字即使不是以UTF-8编码的,也为被强制以UTF-8解码,并对原码进行UTF-8泛化处理,如本文上面编码的变化,以上是我自己的分析,基本可验证所有现象,附一篇参考文档:
http://www.cnblogs.com/zebbey/archive/2009/12/02/1615238.html
UltraEdit是个功能很强大的文本编辑器,我日常的程序开发工作基本上都用它就完成了。
但是,最近几天我时不时的会发现我用UltraEdit保存某些带有中文注释的代码文件,结果出现了乱码,感觉异常奇怪。今天花了点时间总算是把问题搞清楚。
首先,UltraEdit的系统设置里有一项为“自动检测UTF-8文件”,如果这个项目设置了,那么UltraEdit会按照一定的规则去检测UTF-8文件。
这个规则包含unicode中关于BOM的相关标准,这部分这里我就不说了,另外UltraEdit还支持一个很诡异的规则,就是如果文本中包
含:encoding="utf-8"这样的字符串,那么,UltraEdit就会认为这个文件是utf-8编码的。可以这样做一个实验,用
windows自带的记事本(notepad)创建一个文本文件,在里面输入点中文,然后写上:encoding="utf-8",保存为ANSI编码
的,然后将UltraEdit的“自动检测UTF-8文件”打开,打开刚才用notepad保存的文件,可以发现,这时显示的是乱码。这里
UltraEdit把这个文件当作是utf-8编码的了。
这个规则可能在某些情况下让使用者很尴尬。因为这样的特殊文字并不那么特殊,比如XML文件,python代码文件。我放弃使用UltraEdit了,改用EmEditor。
总结下来呢就是GBK编码的汉字被UE当作UTF-8泛化解码处理了!
分享到:
相关推荐
解决ultraeditor打开中文文件出现乱码的情况
10. **插件扩展**:用户可以根据自己的需求安装各种插件,进一步增强UE记事本的功能,如代码质量检查、性能分析等。 UE记事本作为一款专门为Java开发者设计的工具,它的这些特性使其在众多文本编辑器中脱颖而出,...
UE64位--超级记事本
大家在编辑页面的时候查看源文件往往是记事本打开的,如果使用编辑工具会更好,但是通过查看源文件的方法打开默认使用编辑器的话就得配置一下了。
在UE4(Unreal Engine 4)中,开发者经常需要集成各种自定义功能,其中之一就是通过C++代码在蓝图中实现打开外部exe程序。这个功能对于游戏中的交互性或者工具集成非常有用,例如启动辅助编辑器、执行数据分析脚本等...
UE5调用外部EXE程序
冷门资源,用于Ultra Edition记事本的COBOL语法高亮插件。
UE4、UE5读写Txt文件
在UE(Unreal Engine)开发过程中,我们可能会遇到导入数据表(DataTable)时遇到中文乱码的问题。这通常是由于编码不兼容或者处理方式不当导致的。以下是对这个问题的详细解析和解决方案。 首先,我们需要理解CSV...
UE4UE5自定义鼠标样式
Notepad++,可以代替记事本的好工具,和UE不相上下,但是比UE小巧,用起来更顺手!!!
包含常用3500字和标点,英文和特殊字符,Ue4Font字库 直接拖入到工程目录下,文件只适用于UE4!
在游戏开发领域,Unreal Engine(UE)是一个广泛使用的强大3D游戏引擎,它支持从简单的2D项目到复杂的3D场景的构建。随着技术的发展,UE4和UE5不断迭代,提供了更多功能以满足开发者的需求。在处理资源管理时,有时...
本主题聚焦于“UE4程序嵌入WINFORM”,这是一种将强大的虚幻引擎4(UE4)游戏引擎集成到Windows桌面应用(WinForm)中的方法。这种技术可以为桌面应用带来丰富的三维可视化和交互体验。 UE4是Epic Games开发的一款...
3. 在UE5编辑器中,选择“File” > “Edit Project Settings”打开项目设置。 4. 在“Plugins”类别中找到并启用MQTT插件,然后保存设置。 5. 重启UE5编辑器,插件应该已经安装并准备好使用。 **三、使用方法** 1. ...
"readme.txt"通常包含关于如何使用或安装文件的说明,对于UE4离线帮助文档,这个文件可能指示如何正确打开和使用CHM文件,以及可能存在的任何更新或注意事项。 UE4 API涵盖了许多方面,如: 1. **引擎架构**:介绍...
UE4_UE5播放视频带声音
UE(ultraedit)本地帮助文档.chm
标题提到的“UE4文件选择窗口的插件”是一个专门为UE4设计的解决方案,它允许用户通过一个标准的文件选择对话框来打开、选择或保存文件。在UE4的默认设置中,如果在shipping版本中直接调用系统API进行文件操作,可能...
虚幻引擎UE5是 Epic Games 推出的最新版本,为游戏开发、影视制作等领域提供了强大的实时渲染和交互能力。本篇文章将详细讲解如何在UE5中实现与Web的通讯,利用WEBUI插件来搭建桥梁,使得游戏或应用能够与网页进行...