c#编码转换
/// <summary>
/// URL编码
/// </summary>
/// <param name="Source"></param>
/// <param name="Encod">是否UTF8</param>
/// <param name="toUpper">默认到大写</param>
/// <returns></returns>
public static string URLEncod(string Source, Encoding Encod, bool toUpper = true)
{
if (toUpper)
{
StringBuilder sb = new StringBuilder();
; i < Source.Length; i++)
{
string t = Source[i].ToString();
string k = HttpUtility.UrlEncode(t, Encod);
if (t == k) sb.Append(t);
else sb.Append(k.ToUpper());
}
return sb.ToString();
}
else
return HttpUtility.UrlEncode(Source, Encod);
}
/// <summary>
/// URL解码
/// </summary>
/// <param name="Source"></param>
/// <param name="Encod">是否UTF8</param>
/// <returns></returns>
public static string URLDecode(string Source, Encoding Encod)
{
return HttpUtility.UrlDecode(Source, Encod);
}
private void button1_Click(object sender, EventArgs e)
{
//汉字转为Unicode编码:
string hz = textBox1.Text.ToString();
byte[] b=Encoding.Unicode.GetBytes(hz);
string o = "";
foreach(var x in b){
o += string.Format("{0:X2}",x) + " ";
}
textBox2.Text = o;
}
private void button2_Click(object sender, EventArgs e)
{
//Unicode编码转为汉字:
string cd = textBox2.Text.ToString();
string cd2 = cd.Replace(" ", "");
cd2 = cd2.Replace("\r", "");
cd2 = cd2.Replace("\n", "");
cd2 = cd2.Replace("\r\n", "");
cd2 = cd2.Replace("\t", "");
!= )
{
MessageBox.Show("Unicode编码为双字节,请删多或补少!确保是二的倍数。");
}
else
{
;
byte[] b = new byte[len];
; i < cd2.Length;i+= )
{
);
b[i/] =();
}
string o=Encoding.Unicode.GetString(b);
textBox1.Text = o;
}
}
private void button5_Click(object sender, EventArgs e)
{
//汉字转成GBK十六进制码:
string hz = textBox3.Text.ToString();
byte[] gbk = Encoding.GetEncoding("GBK").GetBytes(hz);
string s1 = ""; string s1d = "";
foreach(byte b in gbk){
//s1 += Convert.ToString(b, 16)+" ";
s1 += string.Format("{0:X2}", b) + " ";
s1d += b + " ";
toolTip1.SetToolTip(textBox4, s1d);
}
textBox4.Text = s1;
toolTip1.SetToolTip(textBox4, s1d);
//汉字转成Unicode十六进制码:
byte[] uc = Encoding.Unicode.GetBytes(hz);
string s2 = ""; string s2d = "";
foreach (byte b in uc)
{
//s2 += Convert.ToString(b, 16) + " ";
s2 += string.Format("{0:X2}", b) + " ";
s2d += b + " ";
toolTip1.SetToolTip(textBox5, s2d);
}
textBox5.Text = s2;
toolTip1.SetToolTip(textBox5, s2d);
//汉字转成UTF-8十六进制码:
byte[] utf8 = Encoding.UTF8.GetBytes(hz);
string s3 = ""; string s3d = "";
foreach (byte b in utf8)
{
//s3 += Convert.ToString(b, 16) + " ";
s3 += string.Format("{0:X2}", b) + " ";
s3d += b + " ";
toolTip1.SetToolTip(textBox6, s3d);
}
textBox6.Text = s3;
toolTip1.SetToolTip(textBox6, s3d);
}
private void button6_Click(object sender, EventArgs e)
{ //GBK十六进制码转成汉字:
string cd = textBox4.Text.ToString();
string[] b4 = cd.Split(' ');
];
bs[] = (], );
bs[] = (], );
textBox3.Text =Encoding.GetEncoding("GBK").GetString(bs);
}
private void button7_Click(object sender, EventArgs e)
{ //Unicode十六进制码转成汉字:
string cd = textBox5.Text.ToString();
string[] b5 = cd.Split(' ');
];
bs[] = (], );
bs[] = (], );
textBox3.Text = Encoding.GetEncoding("Unicode").GetString(bs);
}
private void button8_Click(object sender, EventArgs e)
{ //UTF-8十六进制码转成汉字:
string cd = textBox6.Text.ToString();
string[] b6 = cd.Split(' ');
];
bs[] = (], );
bs[] = (], );
bs[] = (], );
textBox3.Text = Encoding.GetEncoding("UTF-8").GetString(bs);
}
c#编码转换的更多相关文章
- 使用vbs脚本进行批量编码转换
使用vbs脚本进行批量编码转换 最近需要使用SourceInsight查看分析在Linux系统下开发的项目代码,我们知道Linux系统中文本文件默认编码格式是UTF-8,而Windows中文系统中的默 ...
- 关于JS的编码转换问题
在进行JS开发过程中,尤其是在开发报表时,报表已集成到Web页面中,通过在页面传递参数至报表中时,会发现有时某些参数值,传递到报表中是显示为问号或乱码等等一系列不能正常显示的情况. 这是由于浏览器和报 ...
- 帆软报表FineReport数据库连接编码转换
1. 问题描述 数据库会以某种编码方式保存与读取数据,FineReport解析时默认使用GBK字符集,若数据库端编码与设计器端编码不一致时,就会导致中文及特殊字符的乱码. FineReport在定义数 ...
- 编码转换的处理 DreamWeaver SC6 打开会出现javacsript出现问题的处理
编码转换的处理: 打开DW后,修改里面有个"页面属性": 点击页面属性,会弹出一个窗口,点击"标题/编码",在"编码"里面选择你要转换的 ...
- C++ 字符编码转换类
记录一下C++ 编码转换的函数: #pragma once #include "afx.h" #define DEFAULT_CODE 0 #define CHINESE_SIMP ...
- [2015.02.02]文本编码转换专家 v2.6
软件名称:文本编码转换专家最新版本:v2.6操作系统:XP/2003/Win7/Win2008软件介绍:文本编码转换专家,界面简洁易用,功能强大实用.自动识别文件编码,有效转换成目标编码.真正的多线程 ...
- python 字符编码 转换
#!/bin/env python#-*- encoding=utf8 -*-# 文件头指定utf8编码还是乱码时,使用下面方式指定# fix encoding problem import sys ...
- ASP 编码转换(乱码问题解决)
ASP 编码转换(乱码问题解决) 输出前先调用Conversion函数进行编码转换,可以解决乱码问题. 注,“&参数&”为ASP的连接符,这里面很多是直接调用的数据库表字段,实际使用请 ...
- Linux查看文件编码格式及文件编码转换
Linux查看文件编码格式及文件编码转换 如果你需要在Linux 中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题.Windows中默认的文件格式是GBK(gb2312),而L ...
- UTF8编码转换(C#)
例如: UTF8---ISO-8859-1 string string = "这是中文";Encoding utf8 = Encoding.UTF8; Encoding ISO = ...
随机推荐
- JAVA动态代理模式(从现实生活角度理解代码原理)
所谓动态代理,即通过代理类:Proxy的代理,接口和实现类之间可以不直接发生联系,而可以在运行期(Runtime)实现动态关联. java动态代理主要是使用java.lang.reflect包中的两个 ...
- Handler.sendMessage 与 Handler.obtainMessage.sendToTarget比较
原文地址: http://www.cnblogs.com/android007/archive/2012/05/10/2494766.html 话说在工作中第一次接触android 的Handler ...
- 原生JS获取元素集合的子元素宽度
有些时候,在一个网页的ul li中,存在左右两个部分的内容,但是右边元素内容又是不固定,左边元素相对应的不能用固定宽度,所有需要我们动态的获取右边元素宽度,来赋值给左边元素的marginRight值. ...
- 机器人聊天的小Demo
先来张图,看看我们要做成什么样的效果.很简单的一个发送消息接收消息的界面,那怎么实现的呢,毫无疑问,是ListView的多布局了,右边显示我们发送消息的条目,左边显示要接收消息的条目.下面是一个Edi ...
- Android—判断当前时间段
思路:获取当前时间相对于当天的分钟数,然后按照时间顺序依次与时间段后面的时间(转化为分钟数)比较(如8:00-9:00,跟9:00比较). 部分代码: 当前时间 Calendar calendar = ...
- 在数组中找出x+y+z=0的组合
就是找x+y=-z的组合 转化为找出值为-z满足x+y=-z的组合 解法一: 为了查找,首先想到排序,为了后面的二分,nlogn, 然后x+y的组合得n^2的复杂度,加上查找是否为-z,复杂度为nlo ...
- ORACLE表空间管理维护
1:表空间概念 在ORACLE数据库中,所有数据从逻辑结构上看都是存放在表空间当中,当然表空间下还有段.区.块等逻辑结构.从物理结构上看是放在数据文件中.一个表空间可由多个数据文件组成. 如下图所示, ...
- Linux命令学习总结:date命令
命令简介: date 根据给定格式显示日期或设置系统日期时间.print or set the system date and time 指令所在路径:/bin/date 命令语法: date [OP ...
- 利用 spring bean 的属性 init-method 解决因为数据库连接没有初始化而导致首次点击页面超慢的问题
问题的描述: 一个项目,涉及到了 两个数据源,分别使用的是 两个不同的 数据库连接池,其中一个是 poxool 连接池,问题在于,spring在启动时,只初始化其中的一个 数据库连接池中的数据库连接, ...
- sql server之ROW_NUMBER() OVER()取每组的第N行数据
先看个例子: document_id card_holder_id created_date document_type_id 1 1 2015-7-1 1 2 4 2015-7-2 1 3 4 20 ...