/**
* 16进制转换
* @author QuRui
*
*/
public class ToHexConverter {
/**
* 16进制数值长度
*/
private static Integer hexLength = 2;
/**
* 十六进制字符串
*/
private String hexStr;
/**
* 单字符串转16进制
* @param s
* @return
*/
public static String toHex(String s){
String str = "";
for (int i = 0; i < s.length(); i++) {
int ch = (int) s.charAt(i);
String s4 = Integer.toHexString(ch);
str = str + s4;
}
return str;
}
/**
* 数值转十六进制
* @param number
* @return String
*/
public static String toHex(int number){
String hexNumber = Integer.toHexString(number);
int lenDiff = getHexLength() - hexNumber.length();
//补位
if (lenDiff>0){
for (int i=0;i<lenDiff;i++){
hexNumber = "0" + hexNumber;
}
}
return hexNumber;
}
/**
* 将字符串转换为16进制字符串(按位转换)
* @param str
* @return
*/
public String convertToHex(String str){
//将字符串分割为单个字符逐一进行转换
int strLen = str.length();
String hex = "";
for (int i=0;i<strLen;i++){
String singleStr = str.substring(i, i+1);
//识别是否是数字
if (isNumberic(singleStr)){
hex += toHex(Integer.parseInt(singleStr));
}else{
hex += toHex(singleStr);
}
}
return hex;
}
/**
* 将字符串中的每个字符逐一转换为十六进制
* @param str
* @return
*/
public String convertEveryCharacterToHex(String str){
//将字符串分割为单个字符逐一进行转换
int strLen = str.length();
String hex = "";
for (int i=0;i<strLen;i++){
String singleStr = str.substring(i, i+1);
hex += toHex(singleStr);
}
return hex;
}
/**
* 将十六进制字符串逐一字符转换为十六进制
* @param hex
* @return String
*/
public String convertHexStrToHex(String hex){
//将字符串分割为单个字符逐一进行转换
int hexLen = hex.length();
String hexStr = "";
for (int i=0;i<hexLen;i++){
String singleStr = hex.substring(i, i+1);
hexStr += toHex(singleStr);
}
return hexStr;
}
/**
* 判断字串中的内容是否是数字
* @param str
* @return Boolean
*/
public static boolean isNumberic(String str){
for (int i=str.length();--i>=0;){
if (!Character.isDigit(str.charAt(i))){
return false;
}
}
return true;
}
public static Integer getHexLength() {
return hexLength;
}
public void setHexLength(Integer hexLength) {
this.hexLength = hexLength;
}
public String getHexStr() {
return hexStr;
}
public void setHexStr(String hexStr) {
this.hexStr = hexStr;
}
}
Java读取解析INI配置文件
最新推荐文章于 2024-04-07 18:15:01 发布