在Java中怎么计算字符编码和字符串所占字节数 .

不同的编码字节个数不一样的【以下列举常见三种编码形式】:

GBK:一个汉字等于2字节,一个字母就等于1个字节,操作符等于1个字节。
UTF-8:一个汉字等于3个字节,中文句号‘。’等于3个字节,一个字母等于1字节,英文的句号‘.’等于1个字节
Unicode:一个汉字等于4个字节,都是等于2个字节【英语,数字,操作符[。,%,&]等的呢】

public class zijie {
    public static void main(String[] args) {
        // 得到当前的系统属性
        String encoding = System.getProperty("file.encoding");
        System.out.println("当前编码:" + encoding);
        try {
            String str = "([0.04245922968394873,0.35328006651790006,6.160877241621716E-4,3.2568745892276585E-4,4.082970851109664E-4,0.33464432678726974,5.467903501318759E-4,0.2677195143925537],ListBuffer(((6.226147480536253,289),27), ((5.971384772976431,595),53), ((3.216778047230726,7840),54)))";
//            String str = "JTI4JTVCMC4wNDI0NTkyMjk2ODM5NDg3MyUyQzAuMzUzMjgwMDY2NTE3OTAwMDYlMkM2LjE2MDg3NzI0MTYyMTcxNkUtNCUyQzMuMjU2ODc0NTg5MjI3NjU4NUUtNCUyQzQuMDgyOTcwODUxMTA5NjY0RS00JTJDMC4zMzQ2NDQzMjY3ODcyNjk3NCUyQzUuNDY3OTAzNTAxMzE4NzU5RS00JTJDMC4yNjc3MTk1MTQzOTI1NTM3JTVEJTJDTGlzdEJ1ZmZlciUyOCUyOCUyODYuMjI2MTQ3NDgwNTM2MjUzJTJDMjg5JTI5JTJDMjclMjklMkMlMjAlMjglMjg1Ljk3MTM4NDc3Mjk3NjQzMSUyQzU5NSUyOSUyQzUzJTI5JTJDJTIwJTI4JTI4My4yMTY3NzgwNDcyMzA3MjYlMkM3ODQwJTI5JTJDNTQlMjklMjklMjk=";
            int len = str.getBytes().length;
            System.out.println("1.按操作系统默认编码来编码:" + len);

            len = str.getBytes("GBK").length;
            System.out.println("2.GBK编码的字节数:"+ len);

            len = str.getBytes("UTF-8").length;
            System.out.println("3.UTF-8编码的字节数:" + len);

            len = str.getBytes("Unicode").length;
            System.out.println("4.Unicode编码的字节数:" + len);
            /*
             * 当前编码:UTF-8
             * 1.按操作系统默认编码来编码:5
             * 2.GBK编码的字节数:4
             * 3.UTF-8编码的字节数:5
             * 4.Unicode编码的字节数:8
             */

        }  catch ( java.io.UnsupportedEncodingException e)  {
            System.out.println(e.getMessage().toString());
        }
    }
}

在这里插入图片描述

另外博主收藏这些年来看过或者听过的一些不错的常用的上千本书籍,没准你想找的书就在这里呢,包含了互联网行业大多数书籍和面试经验题目等等。有人工智能系列(常用深度学习框架TensorFlow、pytorch、keras。NLP、机器学习,深度学习等等),大数据系列(Spark,Hadoop,Scala,kafka等),程序员必修系列(C、C++、java、数据结构、linux,设计模式、数据库等等)以下是部分截图

更多文章见本原创微信公众号「五角钱的程序员」,我们一起成长,一起学习。一直纯真着,善良着,温情地热爱生活。关注回复【电子书】即可领取哦

在这里插入图片描述
在这里插入图片描述

给大家推荐一个Github,上面非常非常多的干货:https://github.com/XiangLinPro/IT_book

Promise yourself to accept life as it comes
and truly make each day special.

猜你喜欢

转载自blog.csdn.net/youif/article/details/106712849