计算字节的长度

//按字节截取字符串  
  static   public   string   getCountStr2(string   str,int   count)  
  {  
  byte   []   bwrite=Encoding.GetEncoding("GB2312").GetBytes(str.ToCharArray());  
  if(bwrite.Length>=count)  
  return   Encoding.Default.GetString(   bwrite,0,count-3);  
  else   return   Encoding.Default.GetString(bwrite);  
  }

一个 C# 字符串最终转化为多长的字节, 取决于使用的编码

      string s = "china 中华人民共和国";
      int l = 0;
      byte[] b1 = System.Text.Encoding.Default.GetBytes(s);
      l = b1.Length;//20
      byte[] b2 = System.Text.Encoding.UTF8.GetBytes(s);
      l = b2.Length;//27
      byte[] b3 = System.Text.Encoding.Unicode.GetBytes(s);
      l = b2.Length;//26
     varchar(255):Varchar类型,单位是字节的,一个中文字符两个字节,所以varchar(255),储存127个汉字和1个英语字符(除于2有余数)。
转换为字节数组  
  byte[]   by=System.Encoding.GetEncoding("GB2312").GetBytes(somestring);  
  int   len=by.Length;

c#判断输入的字符串的字节长度
using System.Text;

public partial class zijie : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string pp = getCountStr2("ffff",2);
        string mm = getCountStr2("敏敏",2);
    }
    /// <summary>
    /// 判断字节的长度
    /// </summary>
    /// <param name="str">要判断的字符串</param>
    /// <param name="count">要显示的长度</param>
    /// <returns>返回截取的字符串</returns>
    static public string getCountStr2(string str, int count)
    {
        byte[] bwrite = Encoding.GetEncoding("GB2312").GetBytes(str.ToCharArray());
        if (bwrite.Length >= count)
            return Encoding.Default.GetString(bwrite, 0, count - 0);
        else return Encoding.Default.GetString(bwrite);
    }
}

 


脚本判段输入的字节长度
<head runat="server">
    <title>无标题页</title>

    <script language="javascript" type="text/javascript">
function checkName(){
   
    String.prototype.Trim   =   function()   //给string增加个Trim()方法
{  
return   this.replace(/(^/s*)|(/s*$)/g,   "");  
}  
   
String.prototype.LTrim   =   function()    //给string增加个LTrim()方法,去左边的空格

{  
return   this.replace(/(^/s*)/g,   "");  
}  
   
String.prototype.RTrim   =   function() // 给string增加个RTrim()方法,去右边的空格

{  
return   this.replace(/(/s*$)/g,   "");  
}  


String.prototype.len = function()           // 给string增加个len ()方法,计算string的字节数
{
    return this.replace(/[^/x00-/xff]/g, "xx").length;
}

    var obj=document.getElementById("txtContent").value;   //取得textbox里的数据
    debugger;
    var count=obj.Trim().len();
    if(count>80)
    {
   
    }
    alert(count);  //去点空格后计算字节数
  
}
    </script>

</head>
<body>
    <form id="form1" runat="server">
        <div>
        <asp:TextBox ID="txtContent" Text="" runat="server"></asp:TextBox>
                <asp:Button ID="ddd" runat="server" Text="fff"  OnClientClick="return checkName()" OnClick="ddd_Click"/>
           </div>
    </form>
</body>
</html>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,我可以给您提供一个示例程序。请注意,以下代码仅供参考,您可以根据您的需求进行修改和优化。 ```html <!DOCTYPE html> <html> <head> <title>计算字节长度</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <style> body { font-family: Arial, sans-serif; margin: 0; padding: 0; } .container { max-width: 600px; margin: 0 auto; padding: 20px; } textarea { width: 100%; height: 200px; padding: 10px; margin-bottom: 10px; box-sizing: border-box; border: 1px solid #ccc; } button { background-color: #4CAF50; color: white; padding: 10px 20px; border: none; cursor: pointer; } </style> </head> <body> <div class="container"> <h1>计算字节长度</h1> <p>在下面的输入框中输入文本内容,点击“计算”按钮即可计算字节长度。</p> <textarea id="text"></textarea> <button onclick="calculate()">计算</button> <p id="result"></p> </div> <script> function calculate() { var text = document.getElementById("text").value; var bytes = new Blob([text]).size; document.getElementById("result").innerHTML = "文本内容的字节长度为:" + bytes + "字节"; } </script> </body> </html> ``` 这个程序包含一个输入框和一个计算按钮。当您在输入框中输入文本后,点击“计算”按钮,程序会计算文本的字节长度,并在页面上显示结果。 注意,这个程序使用了JavaScript的Blob对象来计算字节长度。Blob对象是一种表示二进制数据的对象,通过将文本数据转换为Blob对象,我们可以很容易地计算字节长度
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

18妹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值