【整理】关于保持上传文本格式的问题.

Junglesong 发表于 2006-09-15 13:40:32

大家应该都遇到过这样的事,在form中上传的文本显示起来挤成一堆了,很难看.其实解决起来不麻烦.只要输出时注意一下就可以了.

比如,类Article的concept成员需要输出,我们先包装一个成员函数如下:
public String getContext(){
  return StringUtil.getHtmlStr(concept);
 }

在StringUtil.getHtmlStr(里,我们进行了相关的处理(这个函数不是我原创的,是网上拷贝而来,有注释的地方是我加的):

 public static String getHtmlStr(String str) {
  if (str == null)
   return "";
  else {
   int iMax = str.length();
   StringBuffer strBuffer = new StringBuffer();

   for (int i = 0; i < iMax; ++i) {
    char char5 = str.charAt(i);

    switch (char5) {
    case '\t':
     strBuffer.append("&nbsp;&nbsp;&nbsp;&nbsp;"); // 把Tab替换成四个空格以保持代码的缩进
     break;
    case 62:
     strBuffer.append("&gt;");
     break;
    case 60:
     strBuffer.append("&lt;");
     break;
    case 38:
     strBuffer.append("&amp;");
     break;
    case 32:
     strBuffer.append("&nbsp;");
     break;
    case 10:
     strBuffer.append("<BR>");
     break;
    default:
     strBuffer.append(char5);
     break;
    case 13:
     break;
    }
   }
   return strBuffer.toString();
  }
 }

这样,就把concept中的WhiteSpace字符全替换成了Html编码,下面我们看输出.
<bean:write name="element" property="context" filter="false"/> 

.它会调用类Article的成员函数getContext(),就是我们上面写的那个,将WhiteSpace字符全替换成了Html编码后用bean:write不加过滤的方式输出.就这样简单


收藏: QQ书签 del.icio.us 订阅: Google 抓虾

最新评论

发表评论

* 昵称

已经注册过? 请登录

新用户请先注册 以便能显示头像及追踪评论回复

Email
网址
* 评论
表情
 
 

分类小组论坛
杂谈, 娱乐、八卦, 文学、艺术, 体育, 旅游、同城, 象牙塔, 情感, 时尚、生活, 星座, 科技

请注意遵守中华人民共和国法律法规, 如威胁到本站生存, 将依法向有关部门报告, 同时本站的相关记录可能成为对您不利的证据.

相关法律法规
全国人大常委会关于维护互联网安全的决定
中华人民共和国计算机信息系统安全保护条例
中华人民共和国计算机信息网络国际联网管理暂行规定
计算机信息网络国际联网安全保护管理办法
计算机信息系统国际联网保密管理规定