/** Removes all spaces from a string */
public static String removeSpaces(String str) {
StringBuffer newString = new StringBuffer();
for (int i = 0; i < str.length(); i++) {
if (str.charAt(i) != ' ')
newString.append(str.charAt(i));
}
return newString.toString();
}
public static String toHexString(byte[] bytes) {
StringBuffer buf = new StringBuffer(bytes.length * 2);
for (int i = 0; i < bytes.length; i++) {
buf.append(hexChar[(bytes[i] & 0xf0) >>> 4]);
buf.append(hexChar[bytes[i] & 0x0f]);
}
return buf.toString();
}
public static String cleanHexString(String str) {
StringBuffer buf = new StringBuffer();
for (int i = 0; i < str.length(); i++) {
if (str.charAt(i) != (int) 32 && str.charAt(i) != ':') {
buf.append(str.charAt(i));
}
}
return buf.toString();
}
public static byte[] fromHexString(String str) {
str = cleanHexString(str);
int stringLength = str.length();
if ((stringLength & 0x1) != 0) {
throw new IllegalArgumentException("fromHexString\uFFFDrequires\uFFFDan\uFFFDeven\uFFFDnumber\uFFFDof\uFFFDhex\uFFFDcharacters");
}
byte[] b = new byte[stringLength / 2];
for (int i = 0, j = 0; i < stringLength; i+= 2, j++) {
int high= convertChar(str.charAt(i));
int low = convertChar(str.charAt(i+1));
b[j] = (byte) ((high << 4) | low);
}
return b;
}
private static char[] hexChar = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
private static int convertChar(char c) {
if ( '0' <= c && c <= '9' ) {
return c - '0' ;
} else if ( 'a' <= c && c <= 'f' ) {
return c - 'a' + 0xa ;
} else if ( 'A' <= c && c <= 'F' ) {
return c - 'A' + 0xa ;
} else {
throw new IllegalArgumentException("Invalid\uFFFDhex\uFFFDcharacter:\uFFFD" + c);
}
}
/**
* ��null��մ�ת��Ϊһ��ո�
* @param str
* @return
*/
public static String null2Space(String str) {
String space = "";
if (str == null || str.trim().length() == 0)
return space;
return str.trim();
}
public static String removeSpaces(String str) {
StringBuffer newString = new StringBuffer();
for (int i = 0; i < str.length(); i++) {
if (str.charAt(i) != ' ')
newString.append(str.charAt(i));
}
return newString.toString();
}
public static String toHexString(byte[] bytes) {
StringBuffer buf = new StringBuffer(bytes.length * 2);
for (int i = 0; i < bytes.length; i++) {
buf.append(hexChar[(bytes[i] & 0xf0) >>> 4]);
buf.append(hexChar[bytes[i] & 0x0f]);
}
return buf.toString();
}
public static String cleanHexString(String str) {
StringBuffer buf = new StringBuffer();
for (int i = 0; i < str.length(); i++) {
if (str.charAt(i) != (int) 32 && str.charAt(i) != ':') {
buf.append(str.charAt(i));
}
}
return buf.toString();
}
public static byte[] fromHexString(String str) {
str = cleanHexString(str);
int stringLength = str.length();
if ((stringLength & 0x1) != 0) {
throw new IllegalArgumentException("fromHexString\uFFFDrequires\uFFFDan\uFFFDeven\uFFFDnumber\uFFFDof\uFFFDhex\uFFFDcharacters");
}
byte[] b = new byte[stringLength / 2];
for (int i = 0, j = 0; i < stringLength; i+= 2, j++) {
int high= convertChar(str.charAt(i));
int low = convertChar(str.charAt(i+1));
b[j] = (byte) ((high << 4) | low);
}
return b;
}
private static char[] hexChar = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
private static int convertChar(char c) {
if ( '0' <= c && c <= '9' ) {
return c - '0' ;
} else if ( 'a' <= c && c <= 'f' ) {
return c - 'a' + 0xa ;
} else if ( 'A' <= c && c <= 'F' ) {
return c - 'A' + 0xa ;
} else {
throw new IllegalArgumentException("Invalid\uFFFDhex\uFFFDcharacter:\uFFFD" + c);
}
}
/**
* ��null��մ�ת��Ϊһ��ո�
* @param str
* @return
*/
public static String null2Space(String str) {
String space = "";
if (str == null || str.trim().length() == 0)
return space;
return str.trim();
}