码迷,mamicode.com
首页 > 其他好文 > 详细

判断字节字数

时间:2021-02-10 12:53:04      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:进制   关系   情况   for   ima   字段   字节   数据   rar   

首先要明确的是在我们写入到数据库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
二、在字符串判断中,由于中文和英文 占据宽度不同,有时需要根据字节长度控制字符串数量
会用到字节长度判断。

 

判断字节字数

标签:进制   关系   情况   for   ima   字段   字节   数据   rar   

原文地址:https://www.cnblogs.com/ZkbFighting/p/14392347.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!