В этой статье в основном изучаются два способа чтения и реестра письма в предпочтениях Java и Jregistry. Детали следующие.
Поскольку программа Java является «писать один раз, запустить повсюду» и использовать Java для чтения и написания реестра, кроссплатформенный характер программы плохая. Работа в реестре Java невозможна в версиях до JDK1.4 и может быть реализована только с JNI; Тем не менее, пакет PREFS, предоставленный после JDK1.4, может работать в реестре Windows, но root находится только под программным обеспечением/Javasoft/Prefs. Вероятно, это связано с этой дилеммой, и необходимо обеспечить, чтобы так называемая платформа не имеет значения, и позаботиться о зависимости каждого от Windows. Следующее представит работу реестра из двух аспектов.
Во -первых, получите объект предпочтений, который указывает, где вы хотите написать информацию в реестре, то есть узел. Затем используйте Put (String Key, String Value) или PUTINT (), TDOUBLE () и т. Д., Чтобы назначить значения соответствующим элементам. Вот демонстрационная программа.
импортировать java.util.prefs.*; открытый класс Registery {String [] keys = {"version", "initial", "creator"}; String [] values = {"1.3", "ini.mp3", "[email protected]"}; // Сохранить соответствующее значение в переменной и перейдите в public void writevalue () {// Написать значение реестра в рамках hkey_local_machine/software/javasoft/prefs. Предпочтения pre = preferences.systemroot (). Node ("/javaplayer"); for (int i = 0; i <keys.length; i ++) {pre.put (keys, values); }} public static void main (string [] args) {Registery reg = new Registery (); reg.writevalue (); }} Выполните приведенный выше код и напишите соответствующее значение в рамках HKEY_LOCAL_MACHINE/SOFTOR/JAVASOFT/PREFS/JAVAPLAYER в реестре.
Наконец, позвольте мне объяснить несколько моментов:
Jregistry использует JNI для инкапсуляции API реестра Windows, который облегчает разработчикам Java доступ к реестру Windows. Во -первых, давайте представим jregistry.jar и jregistry.dll. Эти два файла необходимы для использования Jregistry для работы в реестре: один - это пакет JAR, который является файлом, который включает в себя класс Java; Другой представляет собой файл библиотеки динамических ссылок, который предоставляет локальный код, необходимый для доступа к реестру (то есть, C/C ++).
Ниже приведено подробное введение в процесс использования:
Реализовать код
RegistryKey R = новый реестр (rootkey.hkey_current_user, "Software // BEQ Technologies"); R.Create ();
RegistryKey R = новый реестр (rootkey.hkey_current_user, "Программное обеспечение"); R.createsubkey ("Beq Technologies"); try {Registryke r = new RegistryKey (rootkey.hkey_current_user, "Software // BEQ Technologies"); R.Delete (); } // попробуйте поймать (RegistryException re) {re.printStackTrace (); } // ловить RegistryKey R = новый реестр (rootkey.hkey_current_user, "Программное обеспечение"); if (r.hassubkeys ()) {iterator i = r.subkeys (); while (i.hasnext ()) {Registykeke x = (RegistryKey) i.Next (); System.out.println (x.toString ()); } // while} // if RegistryKey R = новый реестр (rootkey.hkey_current_user, "Software // BEQ Technologies"); if (r.hasvalue ("myvalue")) {RegistryValue v = r.getValue ("myValue"); System.out.println (v.toString ()); //} // ЕслиПримечание: v.toString () - это только значение ключа, соответствующее ключевому myValue. Чтобы получить данные значения, соответствующие ключу myValue, вам нужна string str = v.getDate (). Tosting ();
RegistryKey R = новый реестр (rootkey.hkey_current_user, "Software // BEQ Technologies"); RegistryValue v = new RegistryValue ("myval", valuetype.reg_sz, "data"); R.SetValue (V); RegistryKey R = новый реестр (rootkey.hkey_current_user, "Программное обеспечение"); if (r.hasvalues ()) {iterator i = r.values (); while (i.hasnext ()) {RegistryValue v = (RegistryValue) i.Next (); System.out.println (v.toString ()); } // while} // ifНиже приведена демонстрационная программа только для справки.
// Создать новый ключ «Тест», в рамках hklm RegistryKey R = новый реестр (rootkey.hkey_local_machine, "test"); if (! r.exists ()) {r.create (); } // if // Создать записи значений RegistryValue v = new RegistryValue ("Arsting", valuetype.reg_sz, "test"); R.SetValue (V); V.SetName ("AdWord"); v.settype (valuetype.reg_dword); V.SetData (новое целое число (0x1001001)); R.SetValue (V); // Читать записи значения итератор i = r.values (); while (i.hasnext ()) {v = (RegistryValue) i.Next (); System.out.println (v.toString ()); } // while // удалить ключ реестра r.delete ();Суммировать
Выше приведено все содержание этой статьи о кратком обсуждении способов чтения и реестра письма в предпочтениях Java и Jregistry. Я надеюсь, что это будет полезно для всех. Заинтересованные друзья могут продолжать ссылаться на другие связанные темы на этом сайте. Если есть какие -либо недостатки, пожалуйста, оставьте сообщение, чтобы указать это. Спасибо, друзья, за вашу поддержку на этом сайте!