firstChild.setAttribute("attr", new String("中文测试","ISO-8859-1");i forgot the encode type,may be using DEFAULT and if your JDK is internation editor,or try modify ISO-8859-1 to gb2312
to All "涓��娴��"不是我原文件的内容,这个是CSDN转码后的结果,原来的内容就是标准的乱码的UTF-8。 我问这个问题的原因是WSAD在存储XML的时候做字符转化,不知道各位有没有用过WSAD。我可以向WSAD的XML编辑器里面输入GB中文,但是只要我指定了<?xml version="1.0" encoding="UTF-8"?>这句,存储的时候这个文件中所有的GB中文都变成UTF了。所以我觉得应该是有办法解决这个问题的,求救!
firstChild.setAttribute("attr", new String("中文测试".getBytes(),"ISO-8859-1"));
的结果:<?xml version="1.0" encoding="UTF-8"?>
<test-root>
<test-attribute attr="����������������"/>
</test-root>
------------------------------------
改成
firstChild.setAttribute("attr", new String("中文测试".getBytes(),"GB2312"));
的结果:<?xml version="1.0" encoding="UTF-8"?>
<test-root>
<test-attribute attr="中文测试"/>
</test-root>
------------------------------------请看清我的问题:我现在能正确输出GB的中文,但是我需要的是UTF-8的!BTW:
改成:
firstChild.setAttribute("attr", new String("中文测试".getBytes(),"UTF-8"));
的结果:<?xml version="1.0" encoding="UTF-8"?>
<test-root>
<test-attribute attr=""/>
</test-root>………………在我看来这个问题值200分的!
不过给你一个变态解法
System.out.println(new String("中文测试".getBytes("iso_8859-1"),"utf-8"));这是输出 ????
http://java.sun.com/docs/books/tutorial/i18n/text/convertintro.html
只有你本来的字符是
"涓��娴��"
的时候,才能输出成这样的
我问这个问题的原因是WSAD在存储XML的时候做字符转化,不知道各位有没有用过WSAD。我可以向WSAD的XML编辑器里面输入GB中文,但是只要我指定了<?xml version="1.0" encoding="UTF-8"?>这句,存储的时候这个文件中所有的GB中文都变成UTF了。所以我觉得应该是有办法解决这个问题的,求救!
我想用的是中文的内容。
请问:UTF8如何转换成中文的GB?
当你写文件的时候不要用writer, 应该用outPutStream. writer会自动把String 转换成系统却省的encoding. 因为你的系统是中文的,所以你看到的总是GB2312或者GBK.