DataFormat.java
上传用户:top0756
上传日期:2022-08-11
资源大小:6501k
文件大小:3k
源码类别:

Jsp/Servlet

开发平台:

VBScript

  1. package proj112;
  2. import java.util.StringTokenizer;
  3. public class DataFormat {
  4.   public DataFormat() {  }
  5.   /**
  6.    * 把字符串转换成适合于网页显示的文本
  7.    * @param s
  8.    * @return
  9.    */
  10.   public static String toHtml(String s) {
  11.      if (s==null) return s;
  12.      s=strReplace(s,"&","&");
  13.      s=strReplace(s,"<","&lt;");
  14.      s=strReplace(s,">","&gt;");
  15.      s=strReplace(s,""","&quot;");
  16.      s=parseReturn(s,"<br>n&nbsp;&nbsp;&nbsp;&nbsp;");
  17.      return s;
  18.    }
  19.    /**
  20.     * 把字符串sBody中的sFrom用sTo替换
  21.     * @param sBody
  22.     * @param sFrom
  23.     * @param sTo
  24.     * @return
  25.     */
  26.    public static String strReplace(String sBody, String sFrom, String sTo) {
  27.       int i,j,l;
  28.       if (sBody==null || sBody.equals("")) return "";
  29.       i = 0;
  30.       j = sFrom.length();
  31.       //k = sTo.length();
  32.       StringBuffer sss = new StringBuffer(sBody.length());
  33.       //boolean bFirst=true;
  34.       l = i;
  35.       while (sBody.indexOf(sFrom,i)!=-1) {
  36.         i = sBody.indexOf(sFrom,i);
  37.         sss.append(sBody.substring(l,i));
  38.         sss.append(sTo);
  39.         i += j;
  40.         l = i;
  41.       }
  42.       sss.append(sBody.substring(l));
  43.       return sss.toString();
  44.     }
  45.     /**
  46.        * 把字符串中的"rn"转换成"n"
  47.        * @param String sBody  : 要进行替换操作的字符串
  48.        * @param String sEndwith : 要替换成为的字符串
  49.        */
  50.       public static String parseReturn(String sBody, String sEndwith) {
  51.         StringTokenizer t = new StringTokenizer(sBody, "rn");
  52.         StringBuffer sss = new StringBuffer(sBody.length());
  53.         boolean bFirst=true;
  54.         if (sEndwith.trim().equals("")) sEndwith="n";
  55.         while (t.hasMoreTokens()) {
  56.           String s=t.nextToken();
  57.           s=s.trim();
  58.           while (s.startsWith(" ")) s=s.substring(2);
  59.           if (!s.equals("")) {
  60.              if (bFirst) {
  61.               bFirst=false;
  62.             } else {
  63.               sss.append(sEndwith);
  64.             }
  65.             sss.append(s);
  66.          }
  67.         }
  68.         return sss.toString();
  69.       }
  70.       /**
  71.           * 将字符串格式化成 HTML 代码输出
  72.           * 只转换特殊字符,适合于 HTML 中的表单区域
  73.           * @param str 要格式化的字符串
  74.           * @return 格式化后的字符串
  75.           */
  76.          public static String toHtmlInput(String str) {
  77.              if (str == null)    return null;
  78.              String html = new String(str);
  79.              html = strReplace(html, "&", "&amp;");
  80.              html = strReplace(html, "<", "&lt;");
  81.              html = strReplace(html, ">", "&gt;");
  82.              return html;
  83.          }
  84.       /**
  85.      * 将普通字符串格式化成数据库认可的字符串格式
  86.      *
  87.      * @param str 要格式化的字符串
  88.      * @return 合法的数据库字符串
  89.      */
  90.     public static String toSql(String str) {
  91.         String sql = new String(str);
  92.         return strReplace(sql, "'", "''");
  93.     }
  94.         public static String convert( String str ) {
  95.     try {
  96.                 byte[] bytesStr=str.getBytes( "ISO-8859-1" );
  97.                 return new String( bytesStr, "gb2312" );
  98.     }catch( Exception ex) {
  99.                 return str;
  100.     }
  101.         }
  102. }