JAVA常用函數6

來源:互聯網
上載者:User
//替換字元
   public static String replace(String inString, String oldPattern, String newPattern)
   {
       if(inString == null)
           return null;
       if(oldPattern == null || newPattern == null)
           return inString;
       StringBuffer sbuf = new StringBuffer();
       int pos = 0;
       int index = inString.indexOf(oldPattern);
       int patLen = oldPattern.length();
       for(; index >= 0; index = inString.indexOf(oldPattern, pos))
       {
           sbuf.append(inString.substring(pos, index));
           sbuf.append(newPattern);
           pos = index + patLen;
       }

       sbuf.append(inString.substring(pos));
       return sbuf.toString();
   }

/**
 * The Class Md5.
 */
public class Md5 {
    
    /**
     * 32位密碼編譯演算法.
     * 
     * @param plainText the plain text
     * 
     * @return the string
     */
    public static String make32(String plainText) {
        try {
            MessageDigest md = MessageDigest.getInstance("MD5");
            md.update(plainText.getBytes());
            byte b[] = md.digest();
            int i;
            StringBuffer buf = new StringBuffer("");
            for (int offset = 0; offset < b.length; offset++) {
                i = b[offset];
                if (i < 0)
                    i += 256;
                if (i < 16)
                    buf.append("0");
                buf.append(Integer.toHexString(i));
            }
            return buf.toString();
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        }
        return null;
    }
    
    /**
     * 16位密碼編譯演算法.
     * 
     * @param plainText the plain text
     * 
     * @return the string
     */
    public static String make16(String plainText) {
        try {
            MessageDigest md = MessageDigest.getInstance("MD5");
            md.update(plainText.getBytes());
            byte b[] = md.digest();
            int i;
            StringBuffer buf = new StringBuffer("");
            for (int offset = 0; offset < b.length; offset++) {
                i = b[offset];
                if (i < 0)
                    i += 256;
                if (i < 16)
                    buf.append("0");
                buf.append(Integer.toHexString(i));
            }
            return buf.toString().substring(8, 24);
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        }
        return null;
    }
    
    /**
     * The main method.
     * 
     * @param agrs the arguments
     */
    public static void main(String agrs[]) {
        System.out.println(Md5.make32("1"));// 加密4
        System.out.println(Md5.make16("1"));

    }

}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.