java读写注册表_java读写注册表 - leo_de_macondo的个人页面 - OSCHINA - 中文开源技术交流社区...

这篇博客介绍了如何使用Java的第三方库jRegistryKey来操作Windows注册表,包括读取、列出子键和写入键值。示例代码展示了列出HKEY_CURRENT_USER子键和Environment键值,以及写入新键值到注册表的过程。
摘要由CSDN通过智能技术生成

(我真是无聊,java搞什么注册表啊,还不如学C#去...

328df6bac6f5a6535e9064086ac92542.gif)

用java的Preferences有很大限制,最好是下载jRegistryKey,解压出jRegistryKey.jar和jRegistryKey.dll引入项目中

import java.util.Iterator;

import ca.beq.util.win32.registry.RegistryKey;

import ca.beq.util.win32.registry.RegistryValue;

import ca.beq.util.win32.registry.RootKey;

import ca.beq.util.win32.registry.ValueType;

public class CaRegTest1 {

public static void main(String[] args) {

//列出HKEY_CURRENT_USER的子键

RegistryKey current_user = new RegistryKey(RootKey.HKEY_CURRENT_USER);

if(current_user.hasSubkeys()){

Iterator keys = current_user.subkeys();

while(keys.hasNext()) {

RegistryKey k = keys.next();

System.out.println(k.getName());

}

}

//列出 HKEY_CURRENT_USER/Environment 的所有键值的名称、类型和数据

RegistryKey env = new RegistryKey(RootKey.HKEY_CURRENT_USER,"Environment");

if(env.hasValues()) {

Iterator values = env.values();

while(values.hasNext()) {

RegistryValue v = values.next();

System.out.println(v.getName()+"\t"+v.getType());

System.out.println("\t"+v.getData());

}

}

//写入注册表

RegistryKey newKey = new RegistryKey(RootKey.HKEY_CURRENT_USER,"Environment\\NewKey");

newKey.create();//创建新的键HKEY_CURRENT_USER/Environment/NewKey

RegistryValue value = new RegistryValue("My Paht",ValueType.REG_SZ,"hahah\\lalal");

newKey.setValue(value);//在新创建的键里写入键值,在注册表中按F5刷新一下能看到变化了吧

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值