C# 截取中英文混合字符串分行显示宽度相同
/// <summary>
/// 截取方法名显示宽度
/// </summary>
/// <param name="methodName">方法名</param>
/// <param name="byteLen">需要截取的字节长度(可以显示的最长字节长度,包括省略号...)</param>
/// <returns></returns>
private string SubMethodName(string methodName,int byteLen)
{
int methodLen = Encoding.Default.GetByteCount(methodName);
if(byteLen<1)
{
return methodName;
}
if (methodLen <= byteLen)
{
return methodName;
}
else
{
int bytecounter = 0;
string CurrSubStr = string.Empty;
for (int i = 0; i < methodName.Length; i++)
{
bytecounter = bytecounter + Encoding.Default.GetByteCount(methodName[i].ToString());
if (bytecounter > byteLen-4)
{
break;
}
CurrSubStr += methodName[i];
}
return CurrSubStr + "...";
}
}
按 Ctrl+C 复制代码/// <summary> /// 截取方法名显示宽度 /// </summary> /// <param name="methodName">方法名</param> /// <param name="byteLen">需要截取的字节长度(可以显示的最长字节长度,包括省略号...)</param> /// <returns></returns> private string SubMethodName(string methodName,int byteLen) { int methodLen = Encoding.Default.GetByteCount(methodName); if(byteLen<1) { return methodName; } if (methodLen <= byteLen) { return methodName; } else { int bytecounter = 0; string CurrSubStr = string.Empty; for (int i = 0; i < methodName.Length; i++) { bytecounter = bytecounter + Encoding.Default.GetByteCount(methodName[i].ToString()); if (bytecounter > byteLen-4) { break; } CurrSubStr += methodName[i]; } return CurrSubStr + "..."; } }按 Ctrl+C 复制代码
/// <summary> /// 截取方法名显示宽度 /// </summary> /// <param name="methodName">方法名</param> /// <param name="byteLen">需要截取的字节长度(可以显示的最长字节长度,以全汉字计算,此值只能为偶数,包括省略号...)</param> /// <returns></returns> private string SubMethodName(string methodName,int byteLen) { int methodLen = Encoding.Default.GetByteCount(methodName); if(byteLen<1) { return methodName; } if (methodLen <= byteLen) { return methodName; } else { int bytecounter = 0; string CurrSubStr = string.Empty; for (int i = 0; i < methodName.Length; i++) { bytecounter = bytecounter + Encoding.Default.GetByteCount(methodName[i].ToString()); if (bytecounter > byteLen-4) { break; } CurrSubStr += methodName[i]; } return CurrSubStr + "..."; } }
C# 截取中英文混合字符串分行显示宽度相同的更多相关文章
- C#截取中英文混合字符串分行显示
private int GetStrByteLength(string str) { return System.Text.Encoding.Default.GetByteCount(str); } ...
- CSS截取中英文混合字符串长度
<!doctype html> <html> <head> <meta http-equiv="content-type" content ...
- 用JS来实现于截取中英文混合字符串方法(转载)
网站制作过程中,提示层文字超出,需要JS做字符串截取,但是呢,我们常常会烦恼文字中英文混合如何判断,因为我们知道在JS中 string.length这个值是不考虑中英文的,但是计算机对中英文的识别是 ...
- Java 截取中英文混合字符串
题目: 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串. 但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入&q ...
- c#的中英文混合字符串截取
public class StringHelper { public static string GetSubString(string str, int len) ...
- c#的中英文混合字符串截取指定长度,startidx从0开始
//c#的中英文混合字符串截取指定长度,startidx从0开始 by gisoracle@126.com public string getStrLenB(string str, int start ...
- PHP获取中英文混合字符串长度及截取
1.字符串长度 PHP获取中英文混合字符串长度的实现代码如下,1中文=1位,2英文=1位,可自行修改 /** * PHP获取字符串中英文混合长度 * @param $str string 字符串 * ...
- 用C#截取指定长度的中英文混合字符串
很早以前写过一篇文章(用C#截取指定长度的中英文混合字符串),但是对性能没有测试,有人说我写的这个方法性能有问题,后来想,可能真会有BT之需求要求传入一个几万K甚至几M体积的字符串进来,那将会影响正则 ...
- c#的中英文混合字符串截取 public static string SubString(string inputString, int byteLength)
/// <summary> /// c#的中英文混合字符串截取(区分中英文) /// </summary> /// <param ...
随机推荐
- 【Oracle错误集锦】:ORA-00119 & ORA-00132
有时候老天就是爱和你开玩笑,昨天好不easy配置好Oracle.可以用PL/SQL正常登录使用,今天突然就不行了.而且错误十分诡异,没有提示什么错误代码.输入usernamepassword,点击登录 ...
- hdoj--2682--Tree()
Tree Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- Xamarin大佬的地址
https://www.cnblogs.com/hlx-blogs/p/7266098.html http://www.cnblogs.com/GuZhenYin/p/6971069.html
- Huawei设备配置系统时钟
系统时钟是设备上的系统时间戳.由于地域的不同,用户可以根据当地规定设置系统时钟.用户必须正确设置系统时钟以确保其与其他设备保持同步.华为设备出厂时默认采用了协调世界时(UTC),但是没有配置时区所有在 ...
- angular实现简单的pagination分页组件
不想使用第三方库,只想使用一个分页器,那么就简单的实现一个,效果如下: 1.使用方式: <custom-pagination *ngIf="enterpriseList.length& ...
- 紫书 例题 9-11 UVa 1331 (最优三角形剖分)
设置f(i, j)为点i, i + 1 --j所组成的多边形. 那么可以枚举中间点k, 得f(i, j) = min{s(i, j, k), f(i, k), f(k, j) | i < k & ...
- Mysql学习总结(6)——MySql之ALTER命令用法详细解读
MySql语法中Alter命令的用法,这是一个用法比较多的语法,而且功能还是很强大的. [sql] view plaincopy USE learning;(自己要提前建好) CREATE TABLE ...
- Java 学习(13):抽象类& 抽象方法& 封装
目录 --- 抽象类 --- 封装 抽象类: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的 ...
- js实现table排序(jQuery下的jquery.sortElements)
项目中要实现table排序的功能. 网上有非常多解决方式,非常多都基于jQuery. jquery.tablesorter.大小17KB.只是他的首页在ie10下兼容性有点问题. DataTables ...
- QTP校验数据库中数据后台项目
数据校验功能后台主要包含两个类:QTPCommonServlet.java和QTPCommonDao.java 当中QTPCommonServlet.java为: package com.runqia ...