我需要找到一种方法来准确计算特定文本区域内文本的字节大小。我在.Net工作,所以我可以访问这些库,但我更喜欢Javascript解决方案。每个字符值多少字节?什么是最有效的计数和倍增方式?或者我完全错过了一个更好的方法?
编辑:我正在尝试确定已粘贴到textarea中的一段Javascript的下载大小。我能找到的最接近的是http://bytesizematters.com/。我不想只是解除他们的代码,特别是因为我不完全理解它。
答案 0 :(得分:1)
我认为你的答案就在这里
Calculate.aspx:
<body>
<form id="form1" runat="server">
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</form>
</body>
然后双击设计视图上的按钮以在代码隐藏文件(Calculate.aspx.cs)中定义事件处理程序,然后将以下代码添加到方法
protected void Button1_Click(object sender, EventArgs e)
{
Label1.Text = StrToByt(TextBox1.Text).Length.ToString();
}
最后你必须在同一个文件中定义你刚才叫做“StrToByt”的神秘方法定义这个方法,它将字符串str作为参数并通过“System.Text.UTF8Encoding”对象设置它的编码然后将输出作为字符串返回,我们将通过Length属性
进行计数 public static byte[] StrToByt(string str)
{
System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding();
return encoding.GetBytes(str);
}
PS:我研究了一下,发现常见的编码是UTF-8,但如果你不这么认为你可以编辑编码对象而不是“System.Text.UTF8Encoding”,你可以输入“System.Text”。 “你会在文本名称空间中找到所有可用的编码类型
如果你仍然感到困惑,我可以发布完整的代码,希望它有所帮助! =)