您的位置:首页 > 编程语言 > Java开发

java学习 常用的java函数(二)

2013-05-18 22:06 483 查看
常用的java函数(二) 常用字符串处理
 /**  
   * 分割字符串  

   *   

   * @param str String 原始字符串  

   * @param splitsign String 分隔符  

   * @return String[] 分割后的字符串数组  

   */  

  public static String[] split(String str, String splitsign) {   

    int index;   

    if (str == null || splitsign == null)   

      return null;   

    ArrayList al = new ArrayList();   

    while ((index = str.indexOf(splitsign)) != -1) {   

      al.add(str.substring(0, index));   

      str = str.substring(index + splitsign.length());   

    }   

    al.add(str);   

    return (String[]) al.toArray(new String[0]);   

  }   

  

  /**  
   * 替换字符串  

   *   

   * @param from String 原始字符串  

   * @param to String 目标字符串  

   * @param source String 母字符串  

   * @return String 替换后的字符串  

   */  

  public static String replace(String from, String to, String source) {   

    if (source == null || from == null || to == null)   

      return null;   

    StringBuffer bf = new StringBuffer("");   

    int index = -1;   

    while ((index = source.indexOf(from)) != -1) {   

      bf.append(source.substring(0, index) + to);   

      source = source.substring(index + from.length());   

      index = source.indexOf(from);   

    }   

    bf.append(source);   

    return bf.toString();   

  }   

  

  /**  

   * 替换字符串,能能够在HTML页面上直接显示(替换双引号和小于号)  

   *   

   * @param str String 原始字符串  

   * @return String 替换后的字符串  

   */  

  public static String htmlencode(String str) {   

    if (str == null) {   

      return null;   

    }   

  

    return replace("\"", """, replace("<", "<", str));   

  }   

  

  /**  

   * 替换字符串,将被编码的转换成原始码(替换成双引号和小于号)  

   *   

   * @param str String  

   * @return String  

   */  

  public static String htmldecode(String str) {   

    if (str == null) {   

      return null;   

    }   

  

    return replace(""", "\"", replace("<", "<", str));   

  }   

  

  private static final String _BR = "<br/>";   

  

  /**  

   * 在页面上直接显示文本内容,替换小于号,空格,回车,TAB  

   *   

   * @param str String 原始字符串  

   * @return String 替换后的字符串  

   */  

  public static String htmlshow(String str) {   

    if (str == null) {   

      return null;   

    }   

  

    str = replace("<", "<", str);   

    str = replace(" ", " ", str);   

    str = replace("\r\n", _BR, str);   

    str = replace("\n", _BR, str);   

    str = replace("\t", "    ", str);   

    return str;   

  }   

  

  /**  

   * 返回指定字节长度的字符串  

   *   

   * @param str String 字符串  

   * @param length int 指定长度  

   * @return String 返回的字符串  

   */  

  public static String toLength(String str, int length) {   

    if (str == null) {   

      return null;   

    }   

    if (length <= 0) {   

      return "";   

    }   

    try {   

      if (str.getBytes("GBK").length <= length) {   

        return str;   

      }   

    } catch (Exception ex) {   

    }   

    StringBuffer buff = new StringBuffer();   

  

    int index = 0;   

    char c;   

    length -= 3;   

    while (length > 0) {   

      c = str.charAt(index);   

      if (c < 128) {   

        length--;   

      } else {   

        length--;   

        length--;   

      }   

      buff.append(c);   

      index++;   

    }   

    buff.append(" ");   

    return buff.toString();   

  }   

  

  /**  

   * 判断是否为整数  

   *   

   * @param str 传入的字符串  

   * @return 是整数返回true,否则返回false  

   */  

  public static boolean isInteger(String str) {   

    Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");   

    return pattern.matcher(str).matches();   

  }   

  

  /**  

   * 判断是否为浮点数,包括double和float  

   *   

   * @param str 传入的字符串  

   * @return 是浮点数返回true,否则返回false  

   */  

  public static boolean isDouble(String str) {   

    Pattern pattern = Pattern.compile("^[-\\+]?[.\\d]*$");   

    return pattern.matcher(str).matches();   

  }   

更多知识请点击java学习网
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java学习 Java 学习java