正常情况下,我们是直接去string的length的,但是汉字是有两个字节的,所以直接用length是错的。如下图:

所以应该用以下代码来获取长度:

private void button1_Click(object sender, EventArgs e)
{
string s = textBox1.Text;
int i = GetLength(s);
MessageBox.Show(i.ToString());
} public static int GetLength(string str)
{
if (str.Length == )
return ;
ASCIIEncoding ascii = new ASCIIEncoding();
int tempLen = ;
byte[] s = ascii.GetBytes(str);
for (int i = ; i < s.Length; i++)
{
if ((int)s[i] == )
{
tempLen += ;
}
else
{
tempLen += ;
}
}
return tempLen;
}

运行结果如下图:

也可以用这个获取长度:

int i = System.Text.Encoding.Default.GetBytes(s).Length;

最新文章

  1. Integer.parseInt 引发的血案
  2. /var/log/messages
  3. 【USACO 2.3】Zero Sum(dfs)
  4. PHP静态变量定义memcache对象的调用
  5. AC日记——与7无关的数 openjudge 1.5 39
  6. javascript通过时区获取时间
  7. GTX780
  8. C/C++中static关键字作用总结
  9. Android的AutoCompleteTextView在API17高版本添加的setText函数在低版本系统居然能正常调用?官方文档是不是不靠谱了?
  10. TCP/IP协议简单介绍
  11. web —— jsp笔记
  12. html简单定位
  13. 如何用python抓取js生成的数据 - SegmentFault
  14. PHP:class static
  15. struts2.1.8+hibernate2.5.6+spring3.0(ssh2三大框架)常见异常原因和解决方案
  16. Android App性能测试之一:简介
  17. The ADB instructions
  18. 使用js调用js
  19. Asp.net有三大对象:HttpContext, HttpRequest, HttpResponse
  20. GraphChi/graphchi-java程序配置

热门文章

  1. [Angular] Scrolling the Message List To the Bottom Automatically Using OnChanges
  2. (转自aierong原创技术随笔)sqlserver字符串拆分(split)方法汇总
  3. 【codeforces 754D】Fedor and coupons
  4. asp.net core2.1 部署centos7/linux系统 -- 安装部署(一)
  5. Android网络应用之Socket(一)
  6. tensorflow 的版本差异与变化
  7. python 爬取36kr 7x24h快讯
  8. CentOS 配置远程主机ssh免密登录
  9. hadoop 3.x 单机集群配置/启动时的问题处理
  10. Jdbc连接MySQL 8时报错“MySQLNonTransientConnectionException: Public Key Retrieval is not allowed”