java 编码类型
2016-05-28 23:16
375 查看
编码类型
ASCII:美国标准信息交换码。用一个字节的7位可以表示。
ISO8859-1:拉丁码表。欧洲码表。
用一个字节的8为表示。
GB2312:中国的中文编码表。
用俩个字节表示一个汉字。
GBK:扩容后的中国中文编码表。融合了更多的中文字符。大约2万个。
Unicode:国际标准码,融合了多种文字(java的默认编码方式)。
所有文字都用俩个文字来表示。
UTF-8:最多用三个字节来表示一个字符。最通用的码表。
java中的流中编码的转化例子
import java.io.*; public class EncodeStrem { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { // TODO Auto-generated method stub //writeText(); readText(); } public static void readText() throws IOException { InputStreamReader isr = new InputStreamReader(new FileInputStream("utf.txt"),"gbk"); char[] buf = new char[6]; isr.read(buf); String s=new String(buf); System.out.println(s); } public static void writeText() throws IOException { OutputStreamWriter osw= new OutputStreamWriter(new FileOutputStream("utf.txt"),"utf-8"); osw.write("你好"); osw.close(); } }
java中编码解码的实例
import java.io.*; import java.util.*; public class EncodeDemo { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { // TODO Auto-generated method stub String s= "你好"; byte[] b= s.getBytes("utf-8");//编码过程 // String s1= new String(b,"gbk");//解码过程 // System.out.println(s1); //System.out.println(Arrays.toString(b)); String s3 = new String(b,"ISO8859-1");//进行了错误的解码后 System.out.println(s3); byte[] b2 = s3.getBytes("ISO8859-1");//进行一次员解码的编码得到原来的字节 System.out.println(Arrays.toString(b2)); String s2 = new String(b2,"utf-8"); System.out.println(s2); //注意:如果用UTF-8是不适用这种方法的 } }
相关文章推荐
- Java_正则表达式
- java File类
- java多线程---停止、暂停一个线程
- java操作XML文件
- Java web frameworks
- ubuntu14.04.1 安装配置jdk1.7
- 议java中的new和newInstance
- Java运行时数据区讲解
- Java设计模式(八):桥接模式bridge
- eclipse的thrift插件
- 编码
- Struts2-访问Servlet API
- 关于JAVA的那些事儿
- Java web 一段代码只执行一次
- java.util.concurrent.atomic原子操作
- Struts2 浅析 Servlet 与 Struts2
- jdk annotation发布webservice服务 及生成客户端调用代码
- [javaSE] 标识符大小写
- Spring Boot中使用Spring Security进行安全控制
- 关于Eclipse的编码配置和字体大小设置