dataFormat.java
上传用户:sxlinghang
上传日期:2022-07-20
资源大小:1405k
文件大小:3k
源码类别:

数据库编程

开发平台:

Java

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