JRE環境查看代碼

在java開發過程中,有時候會遇到查看我當前項目的jre版本、默認字符集、字符集列表、系統屬性。下面就是源碼:
import java.nio.charset.Charset; 
import java.util.*; 

/** 
* JRE環境查看工具 
* 
* @author Administrator 2009-11-28 17:48:42 
*/ 
public class JVMInfoToolkit { 
        public static void main(String[] args) { 
                System.out.println("當前JRE:" + System.getProperty("java.version")); 
                System.out.println("當前JVM的默認字符集:" + Charset.defaultCharset()); 
                System.out.println("當前JRE可用的字符集列表:\n" + genJVMCharset()); 
                System.out.println("當前JVM運行時系統屬性列表\n:" + genJVMProperties()); 

        } 

        /** 
         * 獲取JVM所支持的字符集列表(格式爲:字符集標準名稱:[別名,別名...] 
         * 
         * @return 字符集列表 
         */ 
        public static String genJVMCharset() { 
                StringBuilder sb = new StringBuilder(); 
                SortedMap<String, Charset> map = Charset.availableCharsets(); 
                for (Map.Entry<String, Charset> entry : map.entrySet()) { 
                        sb.append(entry.getKey()).append(":").append(entry.getValue().aliases()).append("\n"); 
                } 
                return sb.toString(); 
        } 

        /** 
         * 獲取當前JVM運行時系統屬性信息,並按照名稱進行排序 
         * 
         * @return 系統屬性信息 
         */ 
        public static String genJVMProperties() { 
                StringBuilder sb = new StringBuilder(); 
                Properties props = System.getProperties(); 
                List<String> keylist = new ArrayList<String>(); 
                for (Object o : props.keySet()) { 
                        keylist.add(o.toString()); 
                } 
                Collections.sort(keylist, String.CASE_INSENSITIVE_ORDER); 
                for (String s : keylist) { 
                        sb.append(s).append("=").append(props.get(s)).append("\n"); 
                } 
                return sb.toString(); 
        } 
}
發佈了98 篇原創文章 · 獲贊 1 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章