C#编码格式转换,Url,escape,unicode编码和解码
数据操作时,设计的各种类型的编码和解码方法
1 转换escape编码,解码Escape
/// <summary>/// 转换escape编码/// </summary>/// <param name="s"></param>/// <returns></returns>private static string Escape(string s){StringBuilder sb = new StringBuilder();byte[] ba = System.Text.Encoding.Unicode.GetBytes(s);for (int i = 0; i < ba.Length; i += 2){ /**/ BE SURE 2'ssb.Append("%u");sb.Append(ba[i + 1].ToString("X2"));sb.Append(ba[i].ToString("X2"));}return sb.ToString();}/// <summary>/// 解码Escape/// </summary>/// <param name="str"></param>/// <returns></returns>public static string UnEscape(string str){if (!string.IsNullOrEmpty(str)){str = str.Remove(0, 2);//删除最前面两个"%u"string[] strArr = str.Split(new string[] { "%u" }, StringSplitOptions.None);//以子字符串"%u"分隔byte[] byteArr = new byte[strArr.Length * 2];for (int i = 0, j = 0; i < strArr.Length; i++, j += 2){byteArr[j + 1] = Convert.ToByte(strArr[i].Substring(0, 2), 16); //把十六进制形式的字串符串转换为二进制字节byteArr[j] = Convert.ToByte(strArr[i].Substring(2, 2), 16);}str = System.Text.Encoding.Unicode.GetString(byteArr); //把字节转为unicode编码}return str;}
2 unicode编码,unicode解码
/// <summary>/// unicode编码/// </summary>/// <param name="str"></param>/// <returns></returns>public static string ToUnicodeString(this string str){StringBuilder strResult = new StringBuilder();if (!string.IsNullOrEmpty(str)){for (int i = 0; i < str.Length; i++){strResult.Append("\\u");strResult.Append(((int)str[i]).ToString("x"));}}return strResult.ToString();}/// <summary>/// unicode解码/// </summary>/// <param name="str"></param>/// <returns></returns>public static string FromUnicodeString(this string str){//最直接的方法Regex.Unescape(str);StringBuilder strResult = new StringBuilder();if (!string.IsNullOrEmpty(str)){string[] strlist = str.Replace("\\", "").Split('u');try{for (int i = 1; i < strlist.Length; i++){int charCode = Convert.ToInt32(strlist[i], 16);strResult.Append((char)charCode);}}catch (FormatException ex){return Regex.Unescape(str);}}return strResult.ToString();}
3 Url编码和解码,
string str2 =System.Web.HttpUtility.UrlEncode(str1,Encoding.GetEncoding("GB2312"));//这个是对字符串进行编码//string str2 = System.Web.HttpUtility.UrlDecode(str1, Encoding.GetEncoding("GB2312"));
C#编码格式转换,Url,escape,unicode编码和解码相关推荐
- unicode编码 php,PHP 的 UNICODE 编码和解码
方法一: function unicode_encode($name) { $name = iconv('UTF-8', 'UCS-2', $name); $len = strlen($name); ...
- PHP Unicode编码与解码_Unicode转中文_中文转Unicode字符
1:下面来看PHP Unicode编码方法,将中文转为Unicode字符,例如将新浪微博转换为unicode字符串,代码如下: function UnicodeEncode($str){//split ...
- java url转urf8_UrlEncode编码/UrlDecode解码使用方法
当使用地址栏提交查询参数时,如果不编码,非英文字符会按照操作系统的字符集进行编码提交到服务器,服务器会按照配置的字符集进行解码,所以如果两者不一致就会导致乱码. encodeURI函数采用UTF-8对 ...
- js中文转Unicode编码与解码
中文转为unicode 编码 function encodeUnicode(str) {var res = [];for (var i = 0; i < str.length; i++) {re ...
- python 中文转unicode编码_Python 解码 Unicode 转义字符串
其实,这里要讨论的内容是针对 Python2 的,实际上也是 Python2 中让人头疼的编码问题,而 Python3 则好处理得多. 先来看看例子: >>> s = "我 ...
- C# unicode 编码 和 解码
首先转换方面: C#代码 byte[] bytes = System.Text.Encoding.UTF8.GetBytes(msgStr); bytes = Encoding.Convert(E ...
- python 文本文件的编码格式:ASCII编码和UNICODE编码
欢迎关注博主 python老鸟 或 前往 『Python自学网』, 从基础入门免费课程开始,逐步深入学习python全栈体系课程,适合新手入门到精通全栈开发. 免费专栏传送门:<Python基础 ...
- Unicode编码和Base64编码
Unicode JavaScript 定义了 6 个全局方法用于 Unicode 字符串的编码和解码,说明如表所示. 方法 说明 escape() 使用转义序列替换某些字符来对字符串进行编码 unes ...
- JavaScript中Unicode编码和中文相互转换
Unicode转换 简介 官方中文名称为统一码,也译名为万国码.国际码.单一码,是计算机科学领域的业界标准.它整理.编码了世界上大部分的文字系统,使得电脑可以用更为简单的方式来呈现和处理文字. Uni ...
最新文章
- 某程序员对比美团和阿里的卷文化区别:美团重过程,死抠没用细节;阿里更自由,注重结果!...
- springboot 中的 这种策略模式运用实战
- 堆栈的栈顶和栈底在哪_【c# .net】堆栈(Stack)
- 一个星期+4轮面试终拿下offer,进阶学习
- 少一些计较多_新的一年:少一分计较,多一分宽容
- Oracle10g安装步骤(一)
- Linux manjaro系统安装后无法连接wifi,解决方案
- java实现手机开关机_Android 系统重启与关机:Java 代码实现
- C++算法五:二分查找(折半)查找
- 母版页嵌套子母版页通信
- 【Linux】Linux系统备份与还原
- python爬取拼多多数据 verifyauthtoken_拼多多TOKEN授权
- 齐鲁工业大学计算机学院复试名单,齐鲁工业大学2019年硕士研究生拟录取名单公示...
- JAVA对接公众号(三、创建自定义菜单)
- BetterTouchTool使用指南——TouchBar篇
- win10杀毒软件Win Defender设置白名单
- Vue基础之计算属性
- 深圳学区房购买-查查吧深圳学区房地图
- 吴恩达机器学习课程-作业5-Bias vs Variance(python实现)
- 无纸化会议系统的选择理由