Java中怎么通過CMD方式讀取注冊表的任意鍵值,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
杭錦后網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站開發(fā)等網(wǎng)站項目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)自2013年起到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運(yùn)維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。
需要讀取如圖所示注冊表【HKEY_LOCAL_MACHINE\SOFTWARE\EasyDrv7】
節(jié)點下的【DateTime】
的值
直接上代碼:
package com.beibei.common.util.cmd; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashMap; import java.util.Map; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * 注冊表操作工具類 * @author 北北 * @date 2019年6月19日下午8:21:02 */ public class RegistryUtil { private static Logger logger = LoggerFactory.getLogger(RegistryUtil.class); /** ** 讀取注冊表指定節(jié)點所有的鍵值對 ** @author 北北 * @date 2019年6月19日下午8:43:56 * @param nodePath * @return */ public static MapreadNode(String nodePath) { Map regMap = new HashMap<>(); try { Process process = Runtime.getRuntime().exec("reg query " + nodePath); process.getOutputStream().close(); InputStreamReader isr = new InputStreamReader(process.getInputStream()); String line = null; BufferedReader ir = new BufferedReader(isr); while ((line = ir.readLine()) != null) { String[] arr = line.split(" "); if(arr.length != 4){ continue; } regMap.put(arr[1], arr[3]); } process.destroy(); } catch (IOException e) { logger.error("讀取注冊表失敗, nodePath: " + nodePath, e); } return regMap; } public static String readValue(String nodePath, String key) { Map regMap = readNode(nodePath); return regMap.get(key); } public static void main(String[] args) { String paramValue = RegistryUtil.readValue("HKEY_LOCAL_MACHINE\\SOFTWARE\\EasyDrv7", "DateTime"); System.out.println(paramValue); } }
其原理是通過CMD命令【reg query HKEY_LOCAL_MACHINE\SOFTWARE\EasyDrv7】
讀取節(jié)點全部鍵值對,再通過解析得到我們所需要的【DateTime】
的值。
看完上述內(nèi)容,你們掌握J(rèn)ava中怎么通過CMD方式讀取注冊表的任意鍵值的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!