c#如何获取带汉字的字符串真实长度

  介绍

这篇文章给大家分享的是有关c#如何获取带汉字的字符串真实长度的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

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

 C #如何获取带汉字的字符串真实长度

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

private  void  button1_Click (object ,发送方,EventArgs  e)   ,,,{   ,,,,,string  s =, textBox1.Text;   ,,,,,int 小姐:=,GetLength(年代);   ,,,,,MessageBox.Show (i.ToString ());   ,,,}      ,,,public  static  int  GetLength (string  str)   ,,,{   ,,,,,if  (str.Length ==, 0)   ,,,,,,,return  0;   ,,,,,ASCIIEncoding  ascii =, new  ASCIIEncoding ();   ,,,,,int  tempLen =, 0;,   ,,,,,byte [], s =, ascii.GetBytes (str);   ,,,,,for  (int 小姐:=,0;,小姐:& lt;, s.Length;,我+ +)   ,,,,,{   ,,,,,,,if  ((int)[我],==,63)   ,,,,,,,{   ,,,,,,,,,tempLen  +=, 2;   ,,,,,,,}   ,,,,,,,   ,,,,,,,{   ,,,,,,,,,tempLen  +=, 1;   ,,,,,,,}   ,,,,,}   ,,,,,return  tempLen;   ,,,}

运行结果如下图:

 C #如何获取带汉字的字符串真实长度

也可以用这个获取长度:

int 小姐:=,System.Text.Encoding.Default.GetBytes (s) . length;

通过系统提供函数我们就可以获取中文的真实长度,是不是很简单

c#是什么

c#是一个简单,通用,面向对象的编程语言,它由微微软软开发,继承了C和c++强大功能,并且去掉了一些它们的复杂特性,c#综合了VB简单的可视化操作和c++的高运行效率,以其强大的操作能力,优雅的语法风格,创新的语言特性和便捷的面向组件编程从而成为。净开发的首选语言,但它不适用于编写时间急迫或性能非常高的代码,因为c#缺乏性能极高的应用程序所需要的关键功能。

感谢各位的阅读!关于“c#如何获取带汉字的字符串真实长度”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

c#如何获取带汉字的字符串真实长度