现在的位置: 首页 > 综合 > 正文

java中输出string长度问题

2013年12月10日 ⁄ 综合 ⁄ 共 476字 ⁄ 字号 评论关闭

不要以为用.length()就可以解决了,那就不拿来问了~

 

先简单介绍下需求吧:

      最近做一个邮箱(短消息)系统,短消息内容数据库里面是nvarchar(200),系统使用jsp做的,现在在向数据库插入一条短消息时想对插入的内容进行长度判断,如果超过nvarchar(200)的这个长度就提示用户不合法。 

      以上是需求,但是短消息可以输入字母,数字,汉字等,这样用.length()得到的长度是字符长度,就是说1个数字或一个字母或一个汉字它都以1个长度计算,但是汉字在数据库相当与2个长度,而字母数字是一个。

也就是说nvarchar(100)能存100个字母或数字,但是只能存50个汉字。

      好,问题出来了,如何将页面获得的这条内容长度输出来呢?以统一的长度格式(纯字母长度或纯汉字长度)。

      还望大师门指点迷津啊~小鸟在这谢过了~

 

 

问题解决了~

就是用string.getBytes().length就可以了。呵呵~

白天的时候我写的是string.getBytes("iso8859-1").length,但是一直取不对~

抱歉!评论已关闭.