用户输入一个字符串,中英文不确定。我要按一个中文占两位,一个英文占一位这种方式截取前十位。
比如用户输入6个中文,那么截取前五个;用户输入十二个英文则截取前十个;用户输入中英文混合例“我们aaabbbccc”,则截取的结果为:我们aaabbb,总之中文占2英文占1总数不大于10。求该处理函数,多谢!
比如用户输入6个中文,那么截取前五个;用户输入十二个英文则截取前十个;用户输入中英文混合例“我们aaabbbccc”,则截取的结果为:我们aaabbb,总之中文占2英文占1总数不大于10。求该处理函数,多谢!
解决方案 »
- iis做服务器,打开asp.net网页很慢
- 发布一个网页截屏原代码,用于web截屏.图片直接传服务器收藏
- 如何在DataSet方法中插入参数
- width="<%=i%>"
- 怎样在背景图的某一点上插入一个gif文件
- 关于datagrid三层嵌套的表头问题
- [100分]求高人,怎么在图片上加上水印呀~~~在线等待!6点前结帖!
- 谁有清华大学出版社出版的名为《ASP.NET 电子商务高级编程》这本书的源代码啊?在wrox上找了半天也没有!顶着有分!
- 帮我看看asp.net连接数据库为什么打不开?
- 简单的问题
- 请指教:关于引用数据集的问题
- WebApplication如何获取System.Drawing.Graphics对象
public static string CutString(string str, int length)
{
int i = 0, j = 0;
foreach (char chr in str)
{
if ((int)chr > 127)
{
i += 2;
}
else
{
i++;
}
if (i > length)
{
str = str.Substring(0, j) + "…";
break;
}
j++;
}
return str;
}
byte[] b = Encoding.GetEncoding("gb2312").GetBytes(temp);
这样你就可以操作byte了,中文两个byte英文一个byte
碰到一楼说的那种办法怎么办?自己考虑一下就可以了