JEditorPane的setPage后出现乱码显示
一个简简单单的html页面,如下:
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
</head>
<body>
<h1>
魔兽地图管理
</h1>
欢迎您来到神秘莫测,惊险刺激的魔兽世界,我们将引领您展开一次次精彩冒险之旅。
</body>
</html>
事实上,meta一行感觉根本没起到作用,不管是改成gbk还是gb18030还是整行去掉,结果都一样,如图:
如上图,乱码部分仅仅是多添加了h1属性,难道这也会影响编码?不解,mark之。
2009.11.02 编辑补充:
在朋友xp机器上运行没有出现乱码现象,貌似乱码不乱码是依赖操作系统的,但仍不知病根何处,区域与语言设置中也没有异常
2009.11.03 编辑补充:
初步确定与操作系统当前显示编码有关,查看系统编码是:
System.out.println(System.getProperty("file.encoding"));
在我vista机器上为GB18030,而一般xp机器上是GBK,这点差异造成了乱码,而貌似系统唯一设置编码的地方 区域与语言选项中也都是设了简体中文了的,可能是vista比较特殊一点吧,运行jar包时如此这般补救一下:
java -jar -Dfile.encoding=UTF-8 mapmanagement.jar
相关一些研究: