我要啦免费统计

微蓝领域

我的学习档案馆
posts - 19, comments - 57, trackbacks - 0, articles - 57
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

jsp中把特殊字符转换成html特定符号的函数

Posted on 2007-08-15 10:38 hilor 阅读(1624) 评论(0)  编辑  收藏 所属分类: J2EE
import   java.io.*;  
  public   class   Test{  
          public   static   String   changeToHtml(String   input)  
          {  
                  if(input   ==   null   ||   input.length()   ==   0)  
                          return   "";  
                  char   c   =   '   ';  
                  StringBuffer   sb   =   new   StringBuffer(input.length());  
                  for(int   i   =   0;   i   <   input.length();   i++)  
                  {  
                          c   =   input.charAt(i);  
                          if(c   ==   '   ')  
                          {  
                                  sb.append("&nbsp;");  
                                  continue;  
                          }  
                          if(c   ==   '<')  
                          {  
                                  sb.append("&lt;");  
                                  continue;  
                          }  
                          if(c   ==   '>')  
                          {  
                                  sb.append("&gt;");  
                                  continue;  
                          }  
                          if(c   ==   '\n'){  
                                  sb.append("<br>   ");  
                                  continue;  
                          }  
                          if(c   ==   '&'   ){  
                          sb.append("&amp;");  
                          continue;  
                          }                    
                          else  
                                  sb.append(c);  
                  }  
                  return   sb.toString();  
          }  
          public   static   String   transform(String   content)  
          {  
          content=content.replaceAll("&","&amp;");  
          content=content.replaceAll("<","&lt;");  
          content=content.replaceAll("   ","&nbsp;");  
          content=content.replaceAll(">","&gt;");  
          content=content.replaceAll("\n","<br>");  
          return   content;  
          }  
          public   static   void   main(String   []args){  
          BufferedReader   bw;  
          StringBuffer   sb=new   StringBuffer("");  
          String   ss="";  
          long   l=0;  
          try{  
                    File   file=new   File("G:\\novel\\凡尔纳\\海底两万里\\001.HTM");//随意选的文件  
          System.out.println(file.getPath().toString());  
          bw=new   BufferedReader(new   FileReader(file));  
          while((ss=bw.readLine())!=null){  
          System.out.println(ss);  
          sb.append(ss);  
          }  
          bw.close();  
          for(int   i=0;i<10;i++)   sb.append(sb);//作一个大字串  
          }catch(IOException   e){}  
           
          long   a=0;  
          long   b=0;  
           
          /*输出使用changeToHtml()所用时间  
            *a=System.currentTimeMillis();  
            *changeToHtml(sb.toString());  
            *b=System.currentTimeMillis();  
            *System.out.println(b-a);  
              *此处正常显示时间  
                      */  
           
          /*输出使用transform()所用时间  
            *a=System.currentTimeMillis();  
            *transform(sb.toString());  
            *b=System.currentTimeMillis();  
            *System.out.println(b-a);  
            *发生内存溢出错误          
                      */  
          }  
  }

如果字串稍小一点,不发生错误,那么即可看出chageToHtml()所用时间比transform()要少得多。

只有注册用户登录后才能发表评论。


网站导航: