C#按指定字节长度截取字符串(每个汉字长度2字节)


C#按指定字节长度截取字符串(每个汉字长度2字节)

C# 全选
        /// <summary>
        /// 按指定字节长度截取字符串(每个汉字长度2字节)
        /// </summary>
        /// <param name="str">字符串</param>
        /// <param name="byteLength">字节长度</param>
        /// <returns></returns>
        public static string DoTrimString(string str, int byteLength)
        {
            if (string.IsNullOrEmpty(str)) return "";
            if (System.Text.Encoding.UTF8.GetByteCount(str) < byteLength) return str;

            int i = 0;//字节数
            int j = 0;//实际截取长度
            foreach (char newChar in str)
            {
                if ((int)newChar > 127)
                {
                    //汉字
                    i += 2;
                }
                else
                {
                    i++;
                }

                if (i <= byteLength)
                    j++;
                else
                    break;
            }
            str = str.Substring(0, j);
            return str;
        }
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
C/S框架网
上一篇:HtmlAgilityPack编程 - 替换样式(style)的值
下一篇:C#与.NET之间的关系
评论列表

发表评论

评论内容
昵称:
关联文章

C#指定字节长度截取字符串(每个汉字长度2字节)
指定字节长度截取字符串(每个汉字长度2字节)
截取指定像素长度字符串
C# 获取字符串实际长度(总字节数)中文2字节字母1字节
截取中英混合字符串指定长度(转)
C# 生成日期时间数字唯一序号,尾部添加指定位数长度的随机码
生成流水号,数字序号可以指定长度,SP下载
C#根据字节数据byte[]前2位判断文本文件的Encoding编码格式
C#正则表达式查找或替换指定字符串(标识)范围的内容
StrUtils类:字符串处理/加密解密函数库
C# MD5字符串文本加密
C# 计算字符串公式得出数值.(CalculateExpression)
C#图片转换类支持比例缩放图片
更改连接字符串中的超时时间
C/S框架代码注释如何?每个方法及参数都有说明?
C#.NET 对象(字符串)转换常用扩展方法
C# 检查字符串,防SQL注入攻击
DevExpress ChartControl动态创建月份姓名对比的柱状图对比图
C#使用分词算法从文本字符串中抽取关键词模拟百度搜索|CSFramework.COM巨献
C#类扩展方法,字符串对象转换,常用扩展方法StringExtensions