小明思考

高性能服务器端计算
posts - 70, comments - 428, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

UltraEdit的一个Bug

Posted on 2007-04-04 13:51 小明 阅读(3105) 评论(5)  编辑 收藏 引用 所属分类: Tools
UltraEdit的Hex View是查看文件的binary内容的一个好办法

但是查看utf8格式的文件的时候,却显示不正确,甚为奇怪。

比如
utf8格式的"中文1234"

应该是(使用vc6查看)
EF BB BF E4 B8 AD E6 96 87 31 32 33 34

但是UltraEdit却显示
FF FE FF FE 2D 4E 87 65 31 00 32 00 33 00 34 00

看来它把utf8当成utf16来解析了

我用的版本是8.20

Feedback

# re: UltraEdit的一个Bug  回复  更多评论   

2007-04-04 14:20 by 小熊
en
应该是UltraEdit不支持utf8吧

# re: UltraEdit的一个Bug  回复  更多评论   

2007-04-04 16:28 by 绝对零度
16进制打开文件,又不需什么支持不支持的问题。
这个问题我以前也碰到过。后来发现问题是两个:一个输入法是unicode编码输出了,还有一个是Ultraedit里面设置成当有unicode编码输入时,自动把文件格式转成unicode。
所以说这个并不是Ultraedit的BUG,而是对Ultraedit还了解不够深入。

# re: UltraEdit的一个Bug  回复  更多评论   

2007-04-05 21:30 by Rayz
那不叫BUG,那个16进制只是它的UNICODE码而已

# re: UltraEdit的一个Bug  回复  更多评论   

2007-04-06 07:41 by 小明
@Rayz
我还是认为Hex View应该显示文件真实的binary内容
我不希望他做任何转化。

还是用vc6来看文件的binary内容比较可靠一点。

# re: UltraEdit的一个Bug  回复  更多评论   

2007-04-24 10:24 by yayv
这个问题我也遇到过。

内部转换utf16应该是为了多语言显示,而不是提供转换后的HEX编辑。
我想没有哪个人会打开utf8编码的文本,是为了用HEX模式编辑,
希望用hex模式编辑utf16文本的,肯定会自己转换好再做HEX编辑。

产品设计上没有明确的地方导致的开发漏洞。

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理