常用的java方法——字符串前后补零,Ascii转16进制,16进制转Ascii,整型(int&long)转16进制,16进制转整型(int&long)
package com.test;
public class ManyClass{
public String zeroFormat(String str, int len, boolean prev){
int strLen = str.length();
while (strLen < len) {
StringBuilder stringBuffer = new StringBuilder();
if (prev) {
stringBuffer.append("0").append(str);
} else {
stringBuffer.append(str).append("0");
}
str = stringBuffer.toString();
strLen = str.length();
}
return str;
}
public String asciiToHex(String str){
char[] chars = str.toCharArray();
StringBuilder hex = new StringBuilder();
for (char aChar : chars) {
hex.append(Integer.toHexString((int) aChar));
}
return hex.toString();
}
public String hexToAscii(String hexStr) {
StringBuilder output = new StringBuilder("");
for (int i = 0; i < hexStr.length(); i += 2) {
String str = hexStr.substring(i, i + 2);
output.append((char) Integer.parseInt(str, 16));
}
return output.toString();
}
public String intToHex (long str1 ,int size) {
String str = Long.toHexString(str1);
if (str == null) {
str = "";
}
int str_size = str.length();
int pad_len = size - str_size;
StringBuffer retvalue = new StringBuffer();
for (int i = 0; i < pad_len; i++) {
retvalue.append("0");
}
return retvalue.append(str).toString();
}
public long hexToInt (String str1) {
long str = Long.parseUnsignedLong(str1, 16);
return str;
}
}
public class Test {
public static void main(String[] args) {
ManyClass sth = new ManyClass();
System.out.println(sth.asciiToHex("A1"));
System.out.println(sth.asciiToHex("A1").length()/2);
System.out.println(sth.hexToAscii(sth.asciiToHex("A1")));
System.out.println(sth.zeroFormat("3131332e333837373337342c32332e30353730343534", 100, false));
System.out.println(sth.hexToInt("0fce"));
System.out.println(sth.intToHex(4046,4));
}
}