zoukankan      html  css  js  c++  java
  • Java文件与io——常见字符编码

    在计算机世界里,任何的文字都是以指定的编码方式存在的。

    常见编码有:ISO8859-1、GBK/GB2312、unicode、UTF

    ISO8859-1:编码属于单字节编码,最多只能表示0-255的字符范围,主要在英文上应用

    GBK/GB2312:中文的国际编码,专门用来表示汉字,是双字节编码

    unicode:java中就是使用此编码方式,也是最标准的一种编码,是使用16进制表示的编码。但此编码不兼容                 ISO8859-1编码

    UTF:由于unicode不支持ISO8859-1编码,而且容易占用更多的空间,而且对于英文字母也需要使用两个字节         编码,这样使用unicode不便于传输和存储,因此产生了utf编码,utf编码兼容了ISO8859-1编码,也可         以用来表示所有语言字符,不过utf是不定长编码,每个字符的长度从1-6个字节不等,一般在中文网页中         使用此编码,因为这样可以节省空间。

    造成乱码的根本原因:

    1、程序使用的编码与本机的编码不统一

    2、在网络中,客户端与服务端编码不统一

    public class CodeDemo {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            String name="字符编码";
            try {
                String newName=new String(name.getBytes("GBK"),"iso-8859-1");
                System.out.println(newName);
                
                //还原
                String s=new String(newName.getBytes("iso-8859-1"),"GBK");//将iso-8859-1字符编码变为GBK
                System.out.println(s);
            } catch (UnsupportedEncodingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    
    }
  • 相关阅读:
    Nginx IP限制
    Hadoop 基本原理
    Redis 主从复制原理
    ThreadLoacl 小记
    Spring boot @Transaction,@Async在同一个类中注解失效的原因和解决办法
    Kafka学习
    Spring BeanUtils简单使用
    精彩的解释CAP理论的文章
    tcp粘包,udp丢包
    java多线程
  • 原文地址:https://www.cnblogs.com/shenhainixin/p/5122673.html
Copyright © 2011-2022 走看看