萍聚社区-德国热线-德国实用信息网

 找回密码
 注册

微信登录

微信扫一扫,快速登录

萍聚头条

查看: 969|回复: 1

1-1-16-4-9 我是这样解决全角半角问题的

[复制链接]
发表于 2003-5-12 00:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册 微信登录

x
发信人: lovef1y (阿菜(是菜鸟的菜,不是菜刀的菜!!)), 信区: Java
标  题: 我是这样解决全角半角问题的
发信站: BBS 水木清华站 (Mon Jun 24 12:02:48 2002)


从数据库里面读取到数据,想显示前100个字,考虑用String.substring(0,200);
但是如果这100个字里面
有半角的字(比如1,a等),就麻烦了。

我是这样解决全角半角问题的。
写一个toGB(String str)函数,如果toGB(String str)里面的str不能正常转化成
gb2312的字符串,
那么显示为空白,toGB(String str).length()为0
假如想返回前100个字,
这样就可以考虑用toGB(String.substring(0,200));
然后判断toGB().length()是否是0,如果是0,则substring(0,200-1);

<% //-------整个程序如下---------%>

  1. <%!public static String toGB(String str){

  2.         try{
  3.         str=new String(str.getBytes("ISO8859_1"),("GB2312"));
  4.         return str;
  5.         }
  6.         catch(Exception e){
  7.         return null;
  8.         }
  9. }

  10. //-----------------------------------------------------------------

  11. //.......
  12. //和数据库的连接
  13. //.......

  14. String content;

  15. content=rs.getString("content");

  16. int Ccount;
  17. if((Ccount=content.length())>200){
  18.         Ccount=200;
  19.         }
  20.         if(toGB(content.substring(0,Ccount)).length()==0){
  21.         content=content.substring(0,Ccount-1);
  22.         }else{
  23.         content=content.substring(0,Ccount);
  24.         }

  25. out.print(toGB(content));
  26. %>
复制代码

--
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2003-5-12 00:09 | 显示全部楼层
发信人: airport (我是谁), 信区: Java
标  题: Re: 我是这样解决全角半角问题的
发信站: BBS 水木清华站 (Mon Jun 24 14:54:59 2002)

其实如果你只是用JSP的话,只要加上下面一句
<%@ page contentType="text/html;charset=gb2312" %>
系统默认的中文字符长度就会变成1

【 在 lovef1y (阿菜(是菜鸟的菜,不是菜刀的菜!!)) 的大作中提到: 】
: faint,那你不早告诉我,害得我自己想了一天。:)
: 呵呵。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
您需要登录后才可以回帖 登录 | 注册 微信登录

本版积分规则

手机版|Archiver|AGB|Impressum|Datenschutzerklärung|萍聚社区-德国热线-德国实用信息网 |网站地图

GMT+2, 2024-6-14 22:50 , Processed in 0.053473 second(s), 19 queries , MemCached On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表