`

中检测含有中文字符串的实际长度

阅读更多
 VB.NET的写法:
Function StrLength(Byval Str As String) As Integer
   Dim En As ASCIIEncoding=New ASCIIEncoding ()
Dim B As Byte()=En.GetBytes(Str)
Dim i As Integer=0
Dim Length As Integer=0
For i=0 To B.Length-1
If B(i)=63 Then
Length+=1
End If
Length+=1
Next
Return Length
End Function

以下是C#的写法:
   function int StrLength(string Str)
{
ASCIIEncoding En=new ASCIIEncoding();
Byte[] B=En.GetBytes(Str);
int Length=0;
for(i=0;i<=B.Length-1;i++)
{
if(B==63)
{
Length+=1;
}
Length +=1;
}
return Length;
}

  不过以上这段代码会比较慢一些

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;
}

<script>
String.prototype.len=function(){
return this.replace(/[^\x00-\xff]/g,"**").length;
}
var str="我是zhiin";
alert(str.len())
</script>

用System.Text.Encoding.Default.GetByteCount(string)

public int GetStrLen(string str)
{
char[] StrLen = str.ToCharArray();
int len = str.Length();
if("是否中文长度".Length()==8)
{
return len;
}

for(int i=0;i<strLen.Length;i++)
{
if (strLen[i].ToInt32()>255)
len++;
}
return len;
}

分享到:
评论

相关推荐

    检测含有中文字符串的实际长度

    我们在实际过程中要经常去检测含有中文字符串的实际长度, 因为中文字符,和英文字符在一起的话.判断起来你麻烦点. 原理跟在asp中的一样.逐个去判断.是中文加2英文加1. 代码如下:ASCIIEncoding n = new ...

    常用字符串文本处理方法

    常用的文本处理方法,比如过滤关键词。文本编码。...检测含中文字符串实际长度。截断字符串,如果str 的长度超过 need,则提取 str 的前 need 个字符,并在尾部加 “...”。将字符串中的html代码去掉。

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    字符类型 char 1~2000字节 固定长度字符串,长度不够的用空格补充 varchar2 1~4000字节 可变长度字符串,与CHAR类型相比,使用VARCHAR2可以节省磁盘空间,但查询效率没有char类型高 数值类型 Number(m,n) m(1~38) ...

    我整理的VBA 自定义函数大全 共138页

    47.得到字符串实际的长度(以单字节记) 48.18位身份证最后一位有效性验证 49.计算符合maturity condition的拆解金额 50.对多个用同一分隔符分隔的待查找元素,逐一在表区域首列内搜索,将返回选定单元格的值相加,...

    入门学习Linux常用必会60个命令实例详解doc/txt

    它会使mount不执行实际挂上的动作,而是模拟整个挂上的过程,通常会和-v一起使用。 -t vfstype:显示被加载文件系统的类型。 -n:一般而言,mount挂上后会在/etc/mtab中写入一笔资料,在系统中没有可写入文件...

    Lephone Loczlize Plus 1.06 中文免费版 PE 字串替换器.zip

    Lephone Loczlize Plus 1.06 中文注册版是一个本地化工具,主要用于非资源格式的本地化工作,支持的种类包括非资源格式的 C 编译的程序中的 ASCII 字符串和 UniCode 字符串、非资源格式的 Delphi(C++ Builder)编译...

    C#编程经验技巧宝典

    73 &lt;br&gt;0106 如何获得一个字符串中数字的长度 74 &lt;br&gt;0107 如何获得字符串中数字或字母的长度 74 &lt;br&gt;0108 如何获得字符串中某个数字的位置 75 &lt;br&gt;0109 获得字符串中汉字的个数 76 &lt;br&gt;0110...

    LoggingTool.exe

    C#生成日志记录和事件 一、调试工具:生成日志记录和事件查看库,以...检测含有中文字符串的实际长度------------------------len ***************************************************************************/

    excel中161个VBA_自定义函数超级实用

    函数作用:得到字符串实际的长度(以单字节记).......70 '48.函数作用:18位身份证最后一位有效性验证............70 '49.函数作用:计算符合maturity condition的拆解金额....72 '50.函数作用:对多个用同一分隔符分隔...

    C#开发实例大全(基础卷).软件开发技术联盟(带详细书签) PDF 下载

    实例088 使用正则表达式验证中文汉字输入 103 实例089 使用正则表达式验证输入字符串 104 3.7 网络验证应用技巧 105 实例090 使用正则表达式验证E-mail格式 105 实例091 使用正则表达式验证IP地址 106 实例092 使用...

    C语言程序设计标准教程

    适用于初学第十章:文件 文件 文件的基本概念  所谓“文件”是指一组相关数据的有序集合。 这个数据集有一个名称,叫做文件名。...一、读字符串函数fgets函数的功能是从指定的文件中读一个字符串到字符数组中,...

    rar压缩软件.rar

    在 e:\text 目录下的 rar 压缩文件中搜索十六进制字符串 f0 e0 ae ae ab 2d 83 e3 a9。 k 锁定压缩文件。任何试图改变压缩文件的命令都会被忽略。 例子: rar k final.rar l[t[a],b] 压缩文件的内容列表...

    modbus通信协议

    它们都是在消息发送前由主设备产生的,从设备在接收过程中检测每个字符和整个消息帧。 用户要给主设备配置一预先定义的超时时间间隔,这个时间间隔要足够长,以使任何从设备都能作为正常反应。如果从设备测到一传输...

    MySQL命令大全

    4.CHAR(M) 型:定长字符串类型,当存储时,总是是用空格填满右边到指定的长度 5.BLOB TEXT类型,最大长度为(2^16-1)个字符。 6.VARCHAR型:变长字符串类型 5.导入数据库表  ()创建.sql文件  ()先产生...

    《你必须知道的495个C语言问题》

    书中列出了C用户经常问的400多个经典问题,涵盖了初始化、数组、指针、字符串、内存分配、库函数、C预处理器等各个方面的主题,并分别给出了解答,而且结合代码示例阐明要点。 《你必须知道的495个C语言问题》结构...

    你必须知道的495个C语言问题

    然后根据实际的机器环境把它们定义为int、short、long等类型。这样看来,所有的问题都解决了,是吗? 1.4 新的64位机上的64位类型是什么样的? 指针声明 1.5 这样的声明有什么问题?char*p1,p2;我在使用p2的...

Global site tag (gtag.js) - Google Analytics