zoukankan      html  css  js  c++  java
  • 判断字节字数

    首先要明确的是在我们写入到数据库db中的字段的长度varchar(10),这个10是代表是十个字节

    1字节(Byte)=8字位bai=8个二du进制zhi数
    1字位(bit)=1个二进制数
    1B=8b
    1KB=1024B
    1MB=1024KB
    1GB=1024MB
    

    通常情况下,把baiB称为字节、b称为字位、KB称为千字节、MB称为兆字节、GB称为吉字节

    字节是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位

    那么有的时候,一堆复杂的字符怎么算呐,难受:

    ROG幻15 15.6英寸4K屏创意设计师本(R9 - 5900HS / GeForce RTX™3070 / 16G / 1TGSSD)月耀白

    这个网址计算的是:83个字符,大差不差

     在网上找的一个方法,大差不差,字节多少,还跟编码有关系,

     public static int  returnNum(string str)
            {
                int charNum = 0; //统计字节位数
                char[] _charArray = str.ToCharArray();
                for (int i = 0; i < _charArray.Length; i++)
                {
                    char _eachChar = _charArray[i];
                    if (_eachChar >= 0x4e00 && _eachChar <= 0x9fa5) //判断中文字符
                        charNum += 2;
                    else
                        charNum += 1;
                }
    
                return charNum;
            }
    1.在C# 语言中使用string 字符串Unicode 编码
    2.在C#语言中常用汉字 占 3个字节
    方式1:使用默认编码类获取字节长度
    Console.WriteLine(Encoding.Default.GetByteCount("张三"));//输出:6
    //常用 一个字母,数字 一个字节
    Console.WriteLine(Encoding.Default.GetByteCount("ab")); //输出:2
    
    方式2:
    //常用汉字 ,一个汉字 3个字节
    Console.WriteLine(ASCIIEncoding.Default.GetBytes("张网").Length); //输出:6
    Console.WriteLine(UnicodeEncoding.Default.GetBytes("张网").Length); //输出:6
    二、在字符串判断中,由于中文和英文 占据宽度不同,有时需要根据字节长度控制字符串数量
    会用到字节长度判断。
    人各有命,上天注定,有人天生为王,有人落草为寇。脚下的路,如果不是你自己的选择,那么旅程的终点在哪,也没人知道。你会走到哪,会遇到谁,都不一定。
  • 相关阅读:
    C语言中do...while(0)用法小结
    C语言函数指针的用法
    C语言预处理命令之条件编译
    欧拉计划11-15题
    欧拉计划6-10题
    已加载“C:WindowsSysWOW64 tdll.dll”。无法查找或打开 PDB 文件。
    C++使用SQLite步骤及示例
    linux 安装sysstat使用iostat、mpstat、sar、sa
    Nmon命令行:Linux系统性能的监测利器
    linux服务器性能检测工具nmon使用
  • 原文地址:https://www.cnblogs.com/ZkbFighting/p/14392347.html
Copyright © 2011-2022 走看看