在做一个新闻的东西。对中文新闻标题的长度控制很郁闷!
如:“一二三四五六七八九十”,我现在要把过长的部分用“...”来省略。
我是这样做的:
String title = “一二三四五六七八九十”;
String dealtitle;
if(title.length()>10)
dealtitle = title.subString(0,10)+"...";
else
dealtitle = title;得出“一二三四五..."
<a href="news.jsp" title=<%=title%>><%=dealtitle%></a>
是能实现,可是当我在后台修改了数据库的title后,如加长了title:“一二三四五六七八九十十一士寺”后,并不能得到“一二三四五..."
如:“一二三四五六七八九十”,我现在要把过长的部分用“...”来省略。
我是这样做的:
String title = “一二三四五六七八九十”;
String dealtitle;
if(title.length()>10)
dealtitle = title.subString(0,10)+"...";
else
dealtitle = title;得出“一二三四五..."
<a href="news.jsp" title=<%=title%>><%=dealtitle%></a>
是能实现,可是当我在后台修改了数据库的title后,如加长了title:“一二三四五六七八九十十一士寺”后,并不能得到“一二三四五..."
解决方案 »
- 点击某个图片 发送请求
- log4j中怎样将异常的完整信息写入日志文件?????
- jsp中如何向SQL Server数据库中存储和读取word文件?
- jsp中调用bean不能执行的问题。在线等!!!
- 求购一套erp,需要源码,并且要有成功实施的案例,无版权争议,价格QQ议!
- Myeclipse中的所有javaweb工程都无法部署tomcat,求解
- 请各位推荐几本关于JSP/Servlet/JavaBean好书
- 为什么在JavaBean不能中文转换?急!解决马上给分
- java 怎样删除 一个目录???
- 用jsp + oracle开发时候的一个棘手问题,请帮忙!谢谢
- 找 JSP 兼职开发人员 , 如果有兴趣加QQ 66177364
- JAVA取字符串个数问题
应改为:
dealtitle = title.subString(0,5)+"...";
而且,两次结果都是这个,不会是"一二三四五..."吧。
dealtitle = title.subString(0,10)+"...";
截取了"一"到"十"。
应该是这样吧。
混在一起的话也是截取5位,substring截取的是字符个数,而不是字节数~~!
写数据库编码和读数据库编码保持一致才能读取正确,只有读取正确才能截断正确,楼主不妨在截断前做些编码转化测试.
* 将字符串截短,取前n个字符,英文算半个字符。
* @param orignalString 原字符串
* @param length 长度
* @param chopedString 超过部分的表示字符串
* @return 截取的字符串
*/
public static String chop(String orignalString,int length,String chopedString) {
if (orignalString==null||orignalString.length()==0) {
return orignalString;
}
orignalString=orignalString.replaceAll(" "," ");
if (orignalString.length()<length) {
return orignalString;
}
StringBuffer buffer=new StringBuffer(length);
length=length*2;
int count=0;
int stringLength=orignalString.length();
int i=0;
for (;count<length&&i<stringLength;i++) {
char c=orignalString.charAt(i);
if (c<'\u00ff') {
count++;
} else {
count+=2;
}
buffer.append(c);
}
if (i<stringLength) {
buffer.append(chopedString);
}
return buffer.toString();
}