迟的笔画顺序怎么写:如何正确的将汉字转成十进制的编码

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/03 02:59:51
有人说将要转换的字打在百度里面搜索,WD=后面去了%就是十六制的。再用计算器转一下就行了,可是用这个方法打出来的不对。有没有什么好办法啊
先谢了,为什么搜索正常字时显示无可用字符呢。

以Windows2000为例,XP一样
你可以在“开始”-“程序”-“附件”-“系统工具”-“字符映射表”中,选中“高级查看”
字符集设置为“Windows 中文简体”
然后选中你要的汉字,在状态栏中可以看到0xaaaa字样,
其中aaaa为十六进制数,你可以将其转换到十进制数x,
就可以用Alt+X输入了

至于要找到“爱”,设置“分组”为“按拼音”,然后可以方便找到,在状态栏中可以看到:
U+7231(0xB0AE):CJK统一表意符号
将B0AE转换为十进制:45230
Alt+45230就可以输入 爱

在QQ的对话框才能实现

public class Util {
/**
* 将16进制字符串数转换为汉字,可包含数字及符号<br>
* 方 法 名:HexToUnicode <br>
* 创 建 人:<br>
* 创建时间:2015-12-11 下午2:58:48 <br>
* 修 改 人: <br>
* 修改日期: <br>
* @param content
* @return String
*/
public static String HexToUnicode(String content) {
String enUnicode = null;
String deUnicode = null;
for (int i = 0; i < content.length(); i++) {
if (enUnicode == null) {
enUnicode = String.valueOf(content.charAt(i));
} else {
enUnicode = enUnicode + content.charAt(i);
}
if (i % 4 == 3) {
if (enUnicode != null) {
if (deUnicode == null) {
deUnicode = String.valueOf((char) Integer.valueOf(enUnicode, 16).intValue());
} else {
deUnicode = deUnicode + String.valueOf((char) Integer.valueOf(enUnicode, 16).intValue());
}
}
enUnicode = null;
}

}
return deUnicode;
}

/**
* 将汉字转换为16进制字符串数,可包含数字及符号<br>
* 方 法 名:UnicodeToHex <br>
* 创 建 人: <br>
* 创建时间:2015-12-11 下午2:59:31 <br>
* 修 改 人: <br>
* 修改日期: <br>
* @param content
* @return String
*/
public static String UnicodeToHex(String content) {
String enUnicode = null;
for (int i = 0; i < content.length(); i++) {
if (i == 0) {
enUnicode = getHexString(Integer.toHexString(content.charAt(i)).toUpperCase());
} else {
enUnicode = enUnicode + getHexString(Integer.toHexString(content.charAt(i)).toUpperCase());
}
}
return enUnicode;
}

private static String getHexString(String hexString) {
String hexStr = "";
for (int i = hexString.length(); i < 4; i++) {
if (i == hexString.length())
hexStr = "0";
else
hexStr = hexStr + "0";
}
return hexStr + hexString;
}

public static void main(String[] args) {
System.out.println(Util.UnicodeToHex("小王"));
// 打印出
// 738B6C5F6CE2662F4E004E2A5C0F670B53CBFF0C0048004F0048004F0048004F0048004F
String str = "5C0F738B";
System.out.println(Util.HexToUnicode(str));
// 打印出 王江波是一个小朋友,HOHOHOHO

}
}

数字的编码和汉字的编码是不一样的两者之间转换没有意义。

汉字占用两个字节 数字占用一个字节

♥♥♥♥♥♥