获取JVM默认编码以及获取其它JVM属性的方法
package com.liuc.test;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Properties;
public class EncodingTest {
public static void main(String[] args) {
System.out.println(getJVMEnconding());
getJVMParams();
}
// 获得jvm的默认编码
public static String getJVMEnconding() {
return System.getProperty("file.encoding");
}
//获取JVM属性
public static void getJVMParams() {
try {
Properties properties=System.getProperties();
PrintWriter out=null;
out = new PrintWriter(new File("a.txt"));
properties.list(out);
out.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
JVM属性输出到a.txt文件中,内容如下:
-- listing properties --
java.runtime.name=Java(TM) SE Runtime Environment
sun.boot.library.path=D:\Program\JDK1.6\jre\bin
java.vm.version=11.2-b01
java.vm.vendor=Sun Microsystems Inc.
java.vendor.url=http://java.sun.com/
path.separator=;
java.vm.name=Java HotSpot(TM) Client VM
file.encoding.pkg=sun.io
user.country=CN
sun.java.launcher=SUN_STANDARD
sun.os.patch.level=
java.vm.specification.name=Java Virtual Machine Specification
user.dir=F:\work\test
java.runtime.version=1.6.0_12-b04
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs=D:\Program\JDK1.6\jre\lib\endorsed
os.arch=x86
java.io.tmpdir=C:\Users\ADMINI~1\AppData\Local\Temp\
line.separator=
java.vm.specification.vendor=Sun Microsystems Inc.
user.variant=
os.name=Windows Vista
sun.jnu.encoding=GBK
java.library.path=D:\Program\JDK1.6\bin;.;C:\Windows\Su...
java.specification.name=Java Platform API Specification
java.class.version=50.0
sun.management.compiler=HotSpot Client Compiler
os.version=6.1
user.home=C:\Users\Administrator
user.timezone=
java.awt.printerjob=sun.awt.windows.WPrinterJob
file.encoding=GBK
java.specification.version=1.6
user.name=Administrator
java.class.path=F:\work\test\build\classes;D:\tomcat\...
java.vm.specification.version=1.0
sun.arch.data.model=32
java.home=D:\Program\JDK1.6\jre
java.specification.vendor=Sun Microsystems Inc.
user.language=zh
awt.toolkit=sun.awt.windows.WToolkit
java.vm.info=mixed mode, sharing
java.version=1.6.0_12
java.ext.dirs=D:\Program\JDK1.6\jre\lib\ext;C:\Wind...
sun.boot.class.path=D:\Program\JDK1.6\jre\lib\resources.j...
java.vendor=Sun Microsystems Inc.
file.separator=\
java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport...
sun.cpu.endian=little
sun.io.unicode.encoding=UnicodeLittle
sun.desktop=windows
sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+m...
对应表示
键 相关值的描述
java.version Java 运行时环境版本
java.vendor Java 运行时环境供应商
java.vendor.url Java 供应商的 URL
java.home Java 安装目录
java.vm.specification.version Java 虚拟机规范版本
java.vm.specification.vendor Java 虚拟机规范供应商
java.vm.specification.name Java 虚拟机规范名称
java.vm.version Java 虚拟机实现版本
java.vm.vendor Java 虚拟机实现供应商
java.vm.name Java 虚拟机实现名称
java.specification.version Java 运行时环境规范版本
java.specification.vendor Java 运行时环境规范供应商
java.specification.name Java 运行时环境规范名称
java.class.version Java 类格式版本号
java.class.path Java 类路径
java.library.path 加载库时搜索的路径列表
java.io.tmpdir 默认的临时文件路径
java.compiler 要使用的 JIT 编译器的名称
java.ext.dirs 一个或多个扩展目录的路径
os.name 操作系统的名称
os.arch 操作系统的架构
os.version 操作系统的版本
file.separator 文件分隔符(在 UNIX 系统中是“/”)
path.separator 路径分隔符(在 UNIX 系统中是“:”)
line.separator 行分隔符(在 UNIX 系统中是“/n”)
user.name 用户的账户名称
user.home 用户的主目录
user.dir 用户的当前工作目录
分享到:
相关推荐
由于是部署在Windows环境下,Windows默认编码GBK,这就导致了jvm运行时编码不一致的问题,修改也很容易。 解决办法: Linux环境下如果使用的UTF-8编码,可以不用修改,因为Linux默认为UTF-8 war包部署在Tomcat 修改...
那么,在这些过程中,JDK和JVM是如何将这些文件如何编码和解码并运行的呢? 这里,以中文win2k操作系统为例说明JAVA类是如何来编码和被解码的。 第 一步,我们在中文win2k中用编辑软件如记事本编写一个Java源程序...
所以不能够直接new一个Class对象出来,是通过Class类中的一个方法获取到的。 例如:通过全限定路径类名 2、同一种类型不管通过什么方式得到Class的实例都是相等的;一个类型的字节码对象只有一份,在...
如图,获得目录:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64/jre/bin/java 3) 获取字体gbsn00lp.ttf: 部分系统默认提供此字体,可以查询/usr/share/fonts找寻, 4) 移植字体: 在...
final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 finally是异常处理语句结构的一部分,表示总是执行。 finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的...
final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 finally是异常处理语句结构的一部分,表示总是执行。 finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的...
答:启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运行。run()方法可以产生必须退出的标志来停止一个线程。 40.接口是否可...
IntelliJ移位可以看到两倍的字节码您可以使用javap -c查看字节码从Java 8添加了默认静态方法如果在接口中未指定static final或abstract,则将自动附加并编译它。 接口也可以继承,如果方法名称相同,返回类型不同,...
18. 数据库没有orderby默认如何排序。 46 19. 分布式事务如何实现。 46 19.1. 1 事务/分布式事务 47 19.1.1. 1.1 事务 47 19.1.2. 1.2 分布式事务与 XA 规范 47 19.2. 2 两阶段提交协议 47 19.2.1. 2.1 预提交阶段 ...
修改BUG:VCL相关支持库部分组件在修改个别属性或调用个别方法后不可见,并改进了Delphi版本的支持库SDK。 15. 修改BUG:高级表格在列类型为数值型时,添加新行且省略标题的情况下,会导致程序异常。 16. 修改BUG...
如何获取某个日期是当月的最后一天 如何格式化日期 5.数组和集合 6.文件和目录(I/O)操作 如何列出某个目录下的所有文件 如何列出某个目录下的所有子目录 判断一个文件或目录是否存在 如何读写文件 7.Java...
奇怪的是,默认的 logback 并没有让你控制日志的编码方式。 相反,它使用 java 对象序列化并将结果发送到远程 TCP 套接字,在那里它假定您将消息反序列化回正在运行的 JVM 进程。 在我关于工作中,我需要在通过 ...
实例151 获得Class对象表示实体的名称 197 实例152 查看类的声明 198 实例153 查看类的成员 199 实例154 按继承层次对类排序 201 实例155 查看内部类信息 202 7.2 反射的进阶 203 实例156 动态设置类的私有域 203 ...
35. 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 18 36. swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?...
供应商: Oracle CorporationIDE idea2019第一个问题--idea控制台乱码### 乱码解决tomcat conf下logging.properties设置文件编码 其中由如下一行,默认utf-8java.util.logging.ConsoleHandler.encoding = G
javax.print.attribute 提供了描述 JavaTM Print Service 属性的类型以及如何分类这些属性的类和接口。 javax.print.attribute.standard 包 javax.print.attribute.standard 包括特定打印属性的类。 javax.print....
javax.print.attribute 提供了描述 JavaTM Print Service 属性的类型以及如何分类这些属性的类和接口。 javax.print.attribute.standard 包 javax.print.attribute.standard 包括特定打印属性的类。 javax.print....