日期:2014-05-20  浏览次数:20621 次

java 使用registry-3.1.3读取注册表字符串中文的乱码问题? 真心求助!!!急求!!正确的,分全给!
代码:

String reg="Wow6432Node\\RuanMei\\TweakCube3";
try {
RegistryKey software = Registry.HKEY_LOCAL_MACHINE
.openSubKey("SOFTWARE");
RegistryKey subKey = software.openSubKey(reg);

String subKey1Value = subKey.getStringValue("ExeName");
String subKey2Value = subKey.getStringValue("Install_Dir");

System.out.println(subKey1Value);
System.out.println(subKey1Value);
subKey.closeKey();
} catch (NoSuchKeyException e) {
e.printStackTrace();
} catch (RegistryException e) {
e.printStackTrace();
}

本来结果是:E:\必备软件\美化工具\魔方\TweakCube3\
但乱码结果却是:E:\????????\????????\????\TweakCube3
Java 乱码 注册表

------解决方案--------------------
引用:
求助牛人,都说这是最牛的论坛,为什么简单的得不到解答,难得也得不到解答,难道会的人都over了吗?不禁使我对csdn产生怀疑


专门下了你说的这个东西试一下,这个包的实现对包含中文值的KEY应该有问题,我看这个好像有源代码,你直接看一下源代码改一下吧。应该不是使用的问题,可能C语言的实现就有问题。
------解决方案--------------------
只读不写的话,
这里有答案

http://bbs.csdn.net/topics/360158652