\u5b57\u7b26 字符转换 (Unicode字符与中文的相互转化)
来源:互联网 发布:图像边缘检测的算法 编辑:程序博客网 时间:2024/05/21 22:45
C#:
工具下载
示例:
private void button1_Click(object sender, EventArgs e){ String value = textBox1.Text; if (value.Contains("\\u")) value = UnicodeConverter.ToChinese(value); // Unicode字符转化为中文 else value = UnicodeConverter.ToUnicode(textBox1.Text); // 中文转化为Unicode字符 textBox1.Text = value;}
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Text.RegularExpressions;using System.Threading.Tasks;namespace UnicodeStringTool{ /// <summary> /// 此类用于实现Unicode字符与中文字符的相互转换 /// </summary> class UnicodeConverter { /// <summary> /// 将中文字符串转化为Unicode串 /// </summary> public static String ToUnicode(String str) { String tmp = ""; foreach (char C in str) { if (isChinese(C)) tmp += "\\u" + ToString(C, 16); // 将中文字符转化为Unicode串 else tmp += C; } return tmp; } /// <summary> /// 将Unicode串转化为中文字符串 /// </summary> public static String ToChinese(String str) { String tmp = str; Regex regex = new Regex("\\\\u[0-9a-fA-F]{4}", RegexOptions.IgnoreCase); MatchCollection collection = regex.Matches(tmp); foreach (Match match in collection) { String hexStr = match.Value.Substring("\\u".Length); // 获取16进制串 String C = ToChar(match.Value, 16).ToString(); tmp = tmp.Replace(match.Value, C); } return tmp; } // 相关功能函数 // ----------------------------------------------------------------- // 判断字符C是否是中文字符 public static bool isChinese(char C) { // 中文字符范围 return 0x4e00 <= C && C <= 0x9fbb; } // 将数值num转化为radix进制表示的字符串, 2 <= radix <= 36 public static String ToString(int num, int radix = 10) { String Str = ""; while (num > 0) { int remainder = num % radix; // 取余数 num = num / radix; // 取商 Str = ToChar(remainder) + Str; // 将各位余数,依次转化为对应进制字符 } return Str; } // 将数值n转化为字符,0 <= n <= 35,依次转化为字符0-9a-z; // 最大可表示36进制数 public static char ToChar(int n) { n = n % 36; if (n < 10) n += '0'; else n += 'a' - 10; return (char)n; } // 将字符0-9a-z依次转化为数值0-35 public static int ToInt(char C) { if (C > '9') return C - 'a' + 10; else return C - '0'; } // 将字符串radix进制的串str转化为字符 public static char ToChar(String str, int radix) { int n = 0; foreach (char C in str) { n = n * radix + ToInt(C); } return (char)n; } // ----------------------------------------------------------------- }}
java:
\u55\u5b57\u7b26
U字符
/** ChineseCharacterTransform.java: ----- 2016-9-20 下午3:49:51 wangzhongyuan */public class ChineseCharacterTransform{public static void main(String[] args){String str = "U字符";String Ustr = to_U_Str(str);System.out.println(Ustr);// 转化为U字符Ustr = "\\u55\\u5b57\\u7b26";System.out.println(UStr_2_Str(Ustr));// 转化为表示的文本}/* 将字符串转化为\\u形式的字符串,如: "U字符" -> "\\u55\\u5b57\\u7b26" ;U字符为字符串中每个字符的16进制信息 */public static String to_U_Str(String str){String tmp = "";for (char C : str.toCharArray())// 获取所有字符tmp += "\\u" + Integer.toHexString(C);// 将每个字符的的值,转化为16进制字符串return tmp;}/* 将U字符转化为其表示的字符串, 如: "\\u55\\u5b57\\u7b26" -> "U字符" ;按\\u分割,依次转化为对应字符*/public static String UStr_2_Str(String Ustr0){String Ustr = Ustr0;int S = 0, E = 0;String C = "", Value = "";while (Ustr.contains("\\u")){S = Ustr.indexOf("\\u") + "\\u".length();E = Ustr.indexOf("\\u", S);if (E == -1) E = Ustr.length();if (E > S){C = Ustr.substring(S, E);if (C.length() > 4) C = C.substring(0, 4);Value = (char) Integer.parseInt(C, 16) + "";Ustr = Ustr.replace("\\u" + C, Value);}}return Ustr;}}
工具源码下载
开源地址
0 0
- \u5b57\u7b26 字符转换 (Unicode字符与中文的相互转化)
- java中文字符和特殊字符与unicode相互转化
- 中文和unicode字符的相互转换
- Unicode字符与GB2312的相互转换
- Unicode字符与GB2312的相互转换
- MBS与Unicode字符的相互转换
- Unicode字符与ASCII码字符的相互转化
- java Unicode 与中文字符的转换
- ANSI和UNICODE字符的相互转化
- UNICODE与ANSI编码的字符间的相互转换
- UTF-8与Unicode字符的相互转换 与 16进制Unicode转换汉字 重用代码
- UTF-8与Unicode字符的相互转换 与 16进制Unicode转换汉字
- 十六进制字符串 与 所有字符(中文)之间的相互转化
- unicode字符和多字节字符的相互转换接口
- 字符与数字的相互转化
- 中文字符编码的相互转换
- 中文与 Unicode 编码的相互转换
- WINDOWS CE下ANSI 与 Unicode 字符相互转换
- 值得推荐的C/C++框架和库 (真的很强大)
- Win10-控制面板启动方法
- 综合技术
- 放大镜
- Scrum之Master
- \u5b57\u7b26 字符转换 (Unicode字符与中文的相互转化)
- livereloader配置方法
- Jenkins使用经验谈4(创建Job)
- 如何去掉超链接下划线用三个简单的实例来说明
- 模拟坏块及rman恢复坏块测试(一)
- weka CSV to ARff
- 前端好用的插件归纳
- MAC OS X Yosemite 10.10 U盘安装
- 第二十四讲编程项目 求函数的值 油量监控 一元二次方程全解等