ASCIIコード、hexコード、String文字列の相互変換と原理
ASCII:ラテン文字に基づくコンピュータ符号化システムで、主に現代英語とその他の西欧言語を表示するために用いられる. 私たちが関心を持っているのは文字:32~126で、そのうち32はスペースです.48~57は0~9 10個のアラビア数字である.65~90は26文字の大文字の英字である.97~122号は26個の小文字英字である.残りはいくつかの句読点、演算記号などである.
ASCII:ラテン文字に基づくコンピュータ符号化システムで、主に現代英語とその他の西欧言語を表示するために用いられる。
私たちが関心を持っているのは文字:32~126で、そのうち32はスペースです。48~57は0~9 10個のアラビア数字である。65~90は26文字の大文字の英字である。97~122号は26個の小文字英字である。残りはいくつかの句読点、演算記号などです
文字列回転16進文字列変換プロセス:String.getBytes()->byte[]ループ->byte->hexString; public static String stringToHexString(String string) {
if (string == null || string.equals("")) {
return null;
}
byte[] bytes = string.getBytes();
StringBuilder result = new StringBuilder();
for (byte b : bytes) {
result.append(Integer.toHexString(b).toUpperCase()).append(" ");
}
return result.toString();
}
16進文字列回転文字列変換プロセス:hexString.split("")->String[]ループ->String(16進)->Integer->char; public static String hexStringToString(String hexString) {
if (hexString== null || hexString.equals("") || hexString.trim().equals("")) {
return null;
}
StringBuilder sb = new StringBuilder();
String[] strings = hexString.split(" ");
for (String string : strings) {
sb.append((char) Integer.parseInt(string, 16));
}
return sb.toString();
}