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

JAVA常用函数6

2009-10-09 23:22 246 查看
//替换字符
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"));

}

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