C#区分中英文统计字符串的长度

C#区分中英文统计字符串的长度

 

我们都知道C#中的string自已有一个Length属性,用来统计字符串的长度,如果字符都是中文或都是英文,那没什么问题,但如果出现中英文混合的情况,我们的统计结果就不太准确了,因为在计算机中,中文占两个字节的空间,英文占一个字节的空间,而stringLength不具备区分中英文的功能,所以它计算出来的长度并不准确,如我们在网页上显示字符时,有时候不能超过一定的长度,如果字符串是中英文混合,那载取的字符串长短不一,严重影响美观。     当然,我们可以用一种非常简单的方法来计算字符串的长度,而且是中文算两个字符,英文算一个字符,下面给出我一直在用的一个方法的源代码,供大家参考:
      /// <summary>  
      ///
计算文本长度,区分中英文字符,中文算两个长度,英文算一个长度
      /// </summary>
      /// <param name=”Text”>
需计算长度的字符串</param>
      /// <returns>int</returns>
      public int Text_Length(string Text)
      {

            int len=0;

            for(int i=0;i<Text.Length;i++)
            {

                byte[] byte_len = Encoding.Default.GetBytes(Text.Substring(i,1));
                if(byte_len.Length>1)
                    len += 2;  //如果长度大于1,是中文,占两个字节,+2
                else
                    len += 1;  //
如果长度等于1,是英文,占一个字节,+1
            }

            return len;
        }
    当然别忘了加上‘using System.Text;’,对System.Text的引用哦!!!

转载于:https://www.cnblogs.com/nofliu/archive/2010/03/25/1695463.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/110794.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 常用方法在Ubuntu安装pycharm失败的解决方法[通俗易懂]

    常用方法在Ubuntu安装pycharm失败的解决方法[通俗易懂]按常用方法(下载安装包再./pycharm.sh)安装失败,报warn:keymap“visualstudio”notfound,keymap“eclipse”notfound想不通为什么和这些ide有关,查了也没解决最后直接到Ubuntu自带的Ubuntusoftware下搜索pycharm下载,一次成功,不知道为什么这么简单有效的方法大家都不优先推荐。。。…

    2022年9月1日
    0
  • python 字典最外层使用_python字典底层实现

    python 字典最外层使用_python字典底层实现前言问题1:python中的字典到底是有序还是无序问题2:python中字典的效率如何python字典底层原理在Python3.5以前,字典是不能保证顺序的,键值对A先插入字典,键值对B后插

    2022年7月31日
    3
  • 全排列(递归与非递归实现)[通俗易懂]

    全排列(递归与非递归实现)

    2022年1月21日
    43
  • nvaicat15激活码【中文破解版】

    (nvaicat15激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html0YQJ1128OW-eyJsaWNlbnNlSWQi…

    2022年3月27日
    82
  • linux网络设置及解决无法连接网络_linux命令cp复制并更名

    linux网络设置及解决无法连接网络_linux命令cp复制并更名目录一、网络配置1、网络接口信息ifconfig1.1、查看1.2、配置临时配置:使用命令调整网络参数固定设置:通过配置文件修改网络参数2、主机名称hostname3、路由表条目route3.1、查看3.2、配置4、网络连接情况netstat5、获取socket统计信息ss6、测量命令的执行时间time二、网络连接1、网络连接ping2、跟踪数据包traceroute3、域名解析nslookup一、网络配置1、网络接口信息ifconfig1.1、查看●查看所有活动的网络接口信息

    2025年6月13日
    0
  • 对dropout的理解详细版[通俗易懂]

    对dropout的理解详细版[通俗易懂]dropout可以让模型训练时,随机让网络的某些节点不工作(输出置零),也不更新权重(但会保存下来,下次训练得要用,只是本次训练不参与bp传播),其他过程不变。我们通常设定一个dropoutradio=p,即每个输出节点以概率p置0(不工作,权重不更新),假设每个输出都是独立的,每个输出都服从二项伯努利分布p(1-p),则大约认为训练时,只使用了(1-p)比例的输出,相当于每次训练一个子网络。测…

    2022年5月2日
    70

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号