一个代码转换的类
2004-11-22 10:42
387 查看
public class CodingChange
/**//// <summary>
/// 把字符型转换成16进制编码
/// </summary>
/// <param name="character">字符串</param>
/// <returns>一个字符转成4位编码</returns>
public static string CharacterToCoding(string character)
string coding = "";
for (int i = 0; i<character.Length; i++ )
//取出二进制编码内容
byte[] bytes = System.Text.Encoding.Unicode.GetBytes(character.Substring(i,1));
//取出低字节编码内容(两位16进制)
string lowCode = System.Convert.ToString(bytes[0], 16);
if (lowCode.Length == 1)
lowCode = "0" + lowCode;
//取出高字节编码内容(两位16进制)
string hightCode = System.Convert.ToString(bytes[1], 16);
if (hightCode.Length == 1)
hightCode = "0" + hightCode;
coding += (lowCode + hightCode); //加入到字符串中
}
return coding;
}
/**//// <summary>
/// 把16进制编码转换成字符型
/// </summary>
/// <param name="coding">4位转成一位,长度必须是4的倍数</param>
/// <returns>字符串</returns>
public static string CodingToCharacter(string coding)
string characters = "";
if (coding.Length % 4 != 0)//编码为16进制,必须为4的倍数。
throw new System.Exception("编码格式不正确");
}
for (int i = 0; i<coding.Length; i+=4 ) //每四位为一个汉字
byte[] bytes = new byte[2];
string lowCode = coding.Substring(i, 2); //取出低字节,并以16进制进制转换
bytes[0] = System.Convert.ToByte(lowCode, 16);
string highCode = coding.Substring(i + 2, 2); //取出高字节,并以16进制进行转换
bytes[1] = System.Convert.ToByte(highCode, 16);
string character = System.Text.Encoding.Unicode.GetString(bytes);
characters += character;
}
return characters;
}
}
/**//// <summary>
/// 把字符型转换成16进制编码
/// </summary>
/// <param name="character">字符串</param>
/// <returns>一个字符转成4位编码</returns>
public static string CharacterToCoding(string character)
string coding = "";
for (int i = 0; i<character.Length; i++ )
//取出二进制编码内容
byte[] bytes = System.Text.Encoding.Unicode.GetBytes(character.Substring(i,1));
//取出低字节编码内容(两位16进制)
string lowCode = System.Convert.ToString(bytes[0], 16);
if (lowCode.Length == 1)
lowCode = "0" + lowCode;
//取出高字节编码内容(两位16进制)
string hightCode = System.Convert.ToString(bytes[1], 16);
if (hightCode.Length == 1)
hightCode = "0" + hightCode;
coding += (lowCode + hightCode); //加入到字符串中
}
return coding;
}
/**//// <summary>
/// 把16进制编码转换成字符型
/// </summary>
/// <param name="coding">4位转成一位,长度必须是4的倍数</param>
/// <returns>字符串</returns>
public static string CodingToCharacter(string coding)
string characters = "";
if (coding.Length % 4 != 0)//编码为16进制,必须为4的倍数。
throw new System.Exception("编码格式不正确");
}
for (int i = 0; i<coding.Length; i+=4 ) //每四位为一个汉字
byte[] bytes = new byte[2];
string lowCode = coding.Substring(i, 2); //取出低字节,并以16进制进制转换
bytes[0] = System.Convert.ToByte(lowCode, 16);
string highCode = coding.Substring(i + 2, 2); //取出高字节,并以16进制进行转换
bytes[1] = System.Convert.ToByte(highCode, 16);
string character = System.Text.Encoding.Unicode.GetString(bytes);
characters += character;
}
return characters;
}
}
相关文章推荐
- 在 ASP.NET 中使用计时器(Timer)
- java基础概念
- 在Eclipse中使用JUnit
- 使 DataSet 与 XmlDataDocument 同步的示例(节点和字段对应的编程)
- 在VB.NET中分割字符串
- 简析JAVA的XML编程(to:初学者们) chensheng913 [原作]——JAVA夜未眠
- wxRuby 0.6.0 发布
- Windows 2003下不注册组件用ASP发邮件
- 新的学期开始了。。。
- java辨析(2):Collection和Collections区别
- Java 理论与实践: JDK 5.0 中更灵活、更具可伸缩性的锁定机制
- 利用Java调用可执行命令实例
- 求助:收集软件重用--无代码生成方面的资料
- Spring Framework标记库初学指南
- GOOGLE使用
- 末来高手是怎样练成的
- “Visual Studio.net已检测到指定的Web服务器运行的不是Asp.net1.1版。您将无法运行Asp.net Web应用程序或服务”问题的解决方法
- 软件设计模式C#
- 常用ASP.NET解决问题
- 摘抄-我学习ASP.NET时的笔记