Java 的系统属性 sun.jnu.encoding 和 file.encoding 的区别

Python011

Java 的系统属性 sun.jnu.encoding 和 file.encoding 的区别,第1张

1通过java写文件时文件名编码和System.getProperty("sun.jnu.encoding")有关,打印此环境属性发现输出竟然是ANSI的一种编码,终于找到问题爆发点,通过在程序中设置System.setProperty("sun.jnu.encoding","utf-8")解决问题。2通过问题解决得出结论:sun.jnu.encoding 影响文件名的创建,而 file.encoding 则影响到文件内容。3所以说,在我们使用 Java 处理中文文件的时候,如果发现文件的中文内容没有乱码,而文件的中文名发生乱码,我们就应当多考虑一下 sun.jnu.encoding 和 file.encoding 的区别了。

Properties props=System getProperties()//系统属性

System out println( Java的运行环境版本 +props getProperty( java version ))

System out println( Java的运行环境供应商 +props getProperty( java vendor ))

System out println( Java供应商的URL +props getProperty( java vendor url ))

System out println( Java的安装路径 +props getProperty( java home ))

System out println( Java的虚拟机规范版本 +props getProperty( java vm specification version ))

System out println( Java的虚拟机规范供应商 +props getProperty( java vm specification vendor ))

System out println( Java的虚拟机规范名称 +props getProperty( java vm specification name ))

System out println( Java的虚拟机实现版本 +props getProperty( java vm version ))

System out println( Java的虚拟机实现供应商 +props getProperty( java vm vendor ))

System out println( Java的虚拟机实现名称 +props getProperty( java vm name ))

System out println( Java运行时环境规范版本 +props getProperty( java specification version ))

System out println( Java运行时环境规范供应商 +props getProperty( java specification vender ))

System out println( Java运行时环境规范名称 +props getProperty( java specification name ))

System out println( Java的类格式版本号 +props getProperty( java class version ))

System out println( Java的类路径 +props getProperty( java class path ))

System out println( 加载库时搜索的路径列表 +props getProperty( java library path ))

System out println( 默认的临时文件路径 +props getProperty( java io tmpdir ))

System out println( 一个或多个扩展目录的路径 +props getProperty( java ext dirs ))

System out println( 操作系统的名称 +props getProperty( os name ))

System out println( 操作系统的构架 +props getProperty( os arch ))

System out println( 操作系统的版本 +props getProperty( os version ))

System out println( 文件分隔符 +props getProperty( file separator ))   //在 unix 系统中是"/"

System out println( 路径分隔符 +props getProperty( path separator ))   //在 unix 系统中是":"

System out println( 行分隔符 +props getProperty( line separator ))   //在 unix 系统中是"/n"

System out println( 用户的账户名称 +props getProperty( user name ))

System out println( 用户的主目录 +props getProperty( user home ))

System out println( 用户的当前工作目录 +props getProperty( user dir ))

lishixinzhi/Article/program/Java/hx/201311/25853