十六进制与字符串的相互转换,参考了别人的代码。
/**
* convert a string to hex string <br>
* @param String data
* @return hexString
* @throws N/A
* @author tianrenliang
* @since V0.1(2007/11/28)
*/
private static String stringToHexString(String strPart) {
String hexString = "" ;
for ( int i = 0 ; i < strPart.length(); i ++ ) {
int ch = ( int ) strPart.charAt(i);
String strHex = Integer.toHexString(ch);
hexString = hexString + strHex;
}
return hexString;
}
/**
* convert a hex string to string <br>
*
* @param String strPart
* @return hexString
* @throws N/A
* @author tianrenliang
* @since V0.1(2007/11/28)
*/
private static String hexToString(String strPart) {
byte [] baKeyword = new byte [strPart.length() / 2 ];
for ( int i = 0 ; i < baKeyword.length; i ++ )
{
try {
baKeyword[i] = ( byte )( 0xff & Integer.parseInt(strPart.substring(
i * 2 , i * 2 + 2 ), 16 ));
} catch (Exception e) {
e.printStackTrace();
}
}
try {
strPart = new String(baKeyword, " utf-8 " ); // UTF-16le:Not
} catch (Exception e1) {
e1.printStackTrace();
}
return strPart;
}