java的编码方式原理,java的JVM的缺省编码方式由系统的“本地语言环境”设置确定,和操作系统的类型无关
在JAVA源文件-->JAVAC-->Class-->Java-->getBytes()-->new
String()-->显示的过程中,每一步都有编码的转换过程,这个过程总是存在的,只是有的时候用默认的参数进行
JAVAC是以系统默认编码读入源文件,然后按UNICODE进行编码的。在JAVA运行的时候,JAVA也是采用UNICODE编码的,并且默认输入和
输出的都是操作系统的默认编码,也就是说在new
String(bytes[,encode])中,系统认为输入的是编码为encode的字节流,换句话说,如果按encode来翻译bytes才能得到
正确的结果,这个结果最后要在JAVA中保存,它还是要从这个encode转换成Unicode,也就是说有bytes-->encode字符
-->Unicode字符的转换;而在String.getBytes([encode])中,系统要做一个Unicode字符
-->encode字符-->bytes的转换。
以下是取得系统缺省编码方式
public encoding {
public static void main(String[] args) {
Properties initProp = new Properties(System.getProperties());
System.out.println("file.encoding:" + initProp.getProperty("file.encoding"));
System.out.println("file.encoding:" + initProp.getProperty("user.language"));
}
}
总之,java 编码都是Unicode 因此, 我们只要知道当前系统缺省的编码方式,然后Unicode编码转换成当前系统缺省的编码方式
分享到:
相关推荐
JAVA中文字符编码问题详解.doc JAVA中文字符编码问题详解.doc
java_字符编码.txt Javajava_字符编码问题
java字符集编码乱码详解
Java中的字符集编码入门(五)Java代码中的字符编码转换Part1.pdf
java字符编码问题
一个详细的讲解JAVA_字符编码的例子 希望可以帮助到你。
java中文乱码字符集解决大全
Java字符集和编码 ,Java字符集和编码Java字符集和编码
字符集编码问题字符集编码问题字符集编码问题
通用的文件字符编码集判断需要借助第三方包cpdetector.jar 使用Cpdetector jar包检测文件编码需要依赖antlr-2.7.7.jar、chardet-1.0.jar、jargs-1.0.jar三个jar包 本下载资源一站式全包含,并附带亲测有效的片段...
网上很多描述java解压中文乱码的问题,很多描述不全.由于工作需要整理出一个完整版.简单实用.下载后请从ZipUtil.java的main方法开始,一目了然. public static void main(String args[]) { new ZipUtil().unZip("E:\\...
字符编码检测和转换 附件中:FileEncodeDetector.java 此文件可以检测指定文件的编码格式 public static String getFileEncode(File file) {...} 附件中:FileCharsetConverter.java 此文件可以实现两个编码的相互...
NDK开发之C语言调用Java构造方法、父类方法、返回中文字符串乱码问题案例详细解析。
Java中文字符编码探究
上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一规定。这被称为ASCII码,一直沿用至今。 ASCII码一共规定了128个字符的编码,比如空格“SPACE”是32(二进制00100000),...
JAVA及相关字符集编码问题,相当经典。
java字符串编码转换和web中的字符串转换
主要介绍了java 使用 URLDecoder 和 URLEncoder 对中文字符进行编码和解码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
java字符串的各种编码转换. java字符串的各种编码转换
java字符编码监听器