我想知道如何计算字符串数据类型的大小。 说在以下情况下s的大小是多少?
string s="";
string s="1";
string s="12";
如果可能的话,可以指向一个提到这个的网站吗?
答案 0 :(得分:6)
请参阅此链接:How to know the size of the string in bytes?
System.Text.Encoding.Unicode.GetByteCount(s);
System.Text.Encoding.ASCII.GetByteCount(s);
或来自msdn:http://msdn.microsoft.com/en-us/library/system.string.aspx
答案 1 :(得分:4)
从你的问题中不清楚你的意思。
如果按大小表示多少个字符,则Length
是您要查找的属性
"".Length // 0
"1".Length // 1
"12".Length // 2
如果按大小表示多少字节那么这取决于编码,你可以使用Snake Eyes给出的答案
Encoding.Unicode.GetByteCount("") // 0
Encoding.UTF8.GetByteCount("") // 0
Encoding.Unicode.GetByteCount("1") // 2
Encoding.UTF8.GetByteCount("1") // 1
Encoding.Unicode.GetByteCount("12") // 4
Encoding.UTF8.GetByteCount("12") // 2
如果按大小表示数字值,则需要解析文本
Int32.Parse("") // FormatException: Input string was not in a correct format
Int32.Parse("1") // 1
Int32.Parse("12") // 12
答案 2 :(得分:0)
请使用以下代码
long size=sizeof(char) *s.length;
答案 3 :(得分:0)
LMGTFY
任何事物和一切字符串 http://msdn.microsoft.com/en-us/library/system.string.aspx
字符串长度 http://msdn.microsoft.com/en-us/library/system.string.length.aspx
字符串字节数(示例中包含字符串到字节数组) http://msdn.microsoft.com/en-us/library/w3739zdy(v=vs.110).aspx