首页 > 编程 > .NET > 正文

用.NET获取汉字的区位码(C#)

2024-07-10 13:00:14
字体:
来源:转载
供稿:网友
首先复习一下计算机基础知识:

  计算机中最底层的数据都是用二进制及0和1来表示的。每个0或1称作1位,第8位二进制数叫做1个字节,它可以表示ascii码中的一个字符。中文计算机中用两个字节即16位二进制来表示一个汉字。而在unicode编码中所有的符号(包括汉字,英文,标题及其它众多符号)都是为两字节(16)位来表示。

  在system.text命名空间中包含众多编码的类,可供进行操作及转换,下面用两个实例来进行区位码及汉字之间的互换,希望能起到举一反三的效果,让大家可以轻松处理文字编码方面的问题:

程序代码:

  using system;
  using system.text;
  class codingchange
  {
  public 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)); //取出二进制编码内容
  string lowcode = system.convert.tostring(bytes[0], 16); //取出低字节编码内容(两位16进制)
  if (lowcode.length == 1)
  lowcode = "0" + lowcode;
  string hightcode = system.convert.tostring(bytes[1], 16);//取出高字节编码内容(两位16进制)
  if (hightcode.length == 1)
  hightcode = "0" + hightcode;
  coding += (lowcode + hightcode);//加入到字符串中,
  }
  return coding;
  }
  public string codingtocharacter(string coding)
  {
  string characters = "";

商业源码热门下载www.html.org.cn

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表