<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    wiflish
    Loving Life! Loving Coding!
    posts - 98,comments - 98,trackbacks - 0
    代碼如下:
    ?1?????public?static?Map?getEnv()?{
    ?2?????????Map?map?=?new?HashMap();
    ?3?????????String?OS?=?System.getProperty("os.name").toLowerCase();
    ?4?????????
    ?5?????????Process?p?=?null;
    ?6?????????
    ?7 ?? ?? ? /**
    ?8? ??? ??? *?以windows為例.
    ?9? ??? ??? */
    10?????????if(OS.indexOf("windows")?>?-1)?{
    11?????????????try?{
    12?????????????????p?=?Runtime.getRuntime().exec("cmd?/c?set");
    13?????????????????BufferedReader?br?=?new?BufferedReader(new?InputStreamReader(p.getInputStream()));
    14?????????????????
    15?????????????????String?line;
    16?????????????????
    17?????????????????while((line?=?br.readLine())?!=?null)?{
    18?????????????????????String[]?str?=?line.split("=");
    19?????????????????????map.put(str[0],?str[1]);
    20?????????????????}
    21?????????????}?catch(IOException?ioe)?{
    22?????????????????ioe.printStackTrace();
    23?????????????}
    24?????????}
    25?????????return?map;
    26?????}

    上述代碼將windows系統中的環境變量轉換為java的Map,只要通過map.get(key)就能得到環境變量值,比如map.get("JAVA_HOME"),得到JAVA_HOME的值,即JAVA_HOME的系統路徑。

    值得注意的是在java中使用windows操作系統命令時要在命令前加 cmd /c,否則java會報錯(),錯誤列表如下:
    ?1?java.io.IOException:?CreateProcess: ${執行的操作命令表達式或者.bat文件} error=2
    ?2?at?java.lang.Win32Process.create(Native?Method)
    ?3?at?java.lang.Win32Process.<init>(Win32Process.java:63)
    ?4?at?java.lang.Runtime.execInternal(Native?Method)
    ?5?at?java.lang.Runtime.exec(Runtime.java:566)
    ?6?at?java.lang.Runtime.exec(Runtime.java:428)
    ?7?at?java.lang.Runtime.exec(Runtime.java:364)
    ?8?at?java.lang.Runtime.exec(Runtime.java:326)
    ?9?at?org.apache.jsp.ChangeDirBajaRCXX_jsp._jspService(ChangeDirBaja
    10?p.java:185)

    該錯誤的解釋:
    The?error?2?comes?from?the?CreateProcess()?call,?from?MSDN?(GetLastError():

    2?-?The?system?cannot?find?the?file?specified.?-?ERROR_FILE_NOT_FOUND

    So,?it?means?the?path?you?passed?cannot?be?found.?Maybe?you?did?not?configure?your?Runtime?
    class?correctly.
    put?the?batch?file?in?the?same?directory?as?the?
    class?file?and?use?(for?a?test):

    posted on 2006-07-03 17:11 想飛的魚 閱讀(5889) 評論(2)  編輯  收藏 所屬分類: java

    FeedBack:
    # re: 通過java獲取系統環境變量
    2010-03-02 16:45 | mm
    但是,在java中調用 cmd /c set 命令和在命令提示符中的輸出不一樣啊,java調用時出現的少,新添加的自定義環境變量還是沒有啊  回復  更多評論
      
    # re: 通過java獲取系統環境變量[未登錄]
    2010-08-20 17:22 | hello
    System.getenv("")  回復  更多評論
      
    主站蜘蛛池模板: 亚洲国产成人精品无码久久久久久综合 | 免费日本黄色网址| 亚洲字幕在线观看| 免费鲁丝片一级观看| 全免费a级毛片免费看无码| 亚洲色偷偷偷网站色偷一区| 69影院毛片免费观看视频在线 | 亚洲AV无码一区二区三区网址| 国色精品卡一卡2卡3卡4卡免费| 亚洲M码 欧洲S码SSS222| 青草青草视频2免费观看| 亚洲毛片av日韩av无码| 一级毛片成人免费看a| 中文字幕亚洲综合久久男男| 亚洲婷婷天堂在线综合| 我的小后妈韩剧在线看免费高清版| 亚洲国产精品久久网午夜| 成年女人毛片免费播放视频m| 国产亚洲精品成人AA片新蒲金| 亚洲精品亚洲人成在线播放| 免费毛片a在线观看67194 | 亚洲精品国产福利片| 男男AV纯肉无码免费播放无码| 国产亚洲色婷婷久久99精品| 久久精品免费一区二区三区| 97亚洲熟妇自偷自拍另类图片 | 又黄又大的激情视频在线观看免费视频社区在线 | 亚洲va在线va天堂va四虎| 777爽死你无码免费看一二区| 狠狠亚洲狠狠欧洲2019| 久久免费精品一区二区| 亚洲欧洲日产国产最新| 在线jyzzjyzz免费视频| 亚洲一区中文字幕| 波多野结衣视频在线免费观看| 中文字幕在线观看免费| 又大又粗又爽a级毛片免费看| aaa毛片免费观看| 91亚洲国产成人久久精品网址| 日本一道本高清免费| 三年片在线观看免费|