<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 想飛的魚 閱讀(5876) 評論(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("")  回復  更多評論
      
    主站蜘蛛池模板: 在线观看视频免费完整版| 久久国产精品免费看| 成人免费无遮挡无码黄漫视频| 亚洲成人免费在线| 国产成人AV片无码免费| 国产亚洲成av人片在线观看 | 国产精品永久免费| 伊伊人成亚洲综合人网7777| jizz免费在线观看| 国产亚洲av片在线观看16女人| 中国在线观看免费的www| 国产gv天堂亚洲国产gv刚刚碰| 中文字幕乱码免费看电影| 日韩亚洲欧洲在线com91tv| 久久久高清日本道免费观看| 亚洲精品免费观看| 美女网站免费福利视频| 亚洲暴爽av人人爽日日碰| 亚洲国产成人久久一区久久| 国产精品青草视频免费播放| 国产V亚洲V天堂A无码| 国产免费不卡视频| 亚洲国产精品18久久久久久| 亚洲A∨精品一区二区三区| baoyu122.永久免费视频| 亚洲第一页在线播放| 爽爽日本在线视频免费| 亚洲第一视频在线观看免费| 亚洲av不卡一区二区三区| 成人奭片免费观看| 一区二区视频免费观看| 精品亚洲A∨无码一区二区三区 | 日本久久久免费高清| 好猛好深好爽好硬免费视频| 亚洲色图.com| 亚洲成a人片在线观看久| **一级一级毛片免费观看| 色婷婷精品免费视频| 亚洲视频在线视频| 日韩亚洲国产二区| 免费能直接在线观看黄的视频 |