zoukankan      html  css  js  c++  java
  • 使用MySql时会遇到中文乱码的问题

    编码转换的代码:

    /*   在使用MySql时会遇到中文乱码的问题就此写下面两个函数   
            *   在写入数据库和从数据库读出时将编码改变   
            *   author:alice   
            *   date       :2006/1/25   
          
    */
       
          
    //写入数据库时进行转换   
          public   string   GB2312_ISO8859(string   write)   
          
    {   
            
    //声明字符集   
            System.Text.Encoding   iso8859,   gb2312;   
            
    //iso8859   
            iso8859   =   System.Text.Encoding.GetEncoding("iso8859-1");   
            
    //国标2312   
            gb2312   =   System.Text.Encoding.GetEncoding("gb2312");   
            
    byte[]   gb;   
            gb   
    =   gb2312.GetBytes(write);   
            
    //返回转换后的字符   
            return   iso8859.GetString(gb);   
          }
       
            
          
    //读出时进行转换   
          public   string   ISO8859_GB2312(string   read)   
          
    {   
            
    //声明字符集   
            System.Text.Encoding   iso8859,gb2312;   
            
    //iso8859   
            iso8859         =   System.Text.Encoding.GetEncoding("iso8859-1");   
            
    //国标2312   
            gb2312   =   System.Text.Encoding.GetEncoding("gb2312");   
            
    byte[]   iso;   
            iso   
    =   iso8859.GetBytes(read);   
            
    //返回转换后的字符   
            return   gb2312.GetString(iso);   
          }


    以上是C#代码,只能进行单个转换,如果需要批量转换的话,则可以将dataset里面的数据先读入xml文件,然后在页面显示。

     //批量数据转换   
      
    //其实就是将dataset的内容读出到xml文件,然后再输出   
      public   DataSet   ISO8859_GB2312(DataSet   ds)   
      
    {   
      
    string   xml;   
      xml   
    =   ds.GetXml();   
      ds.Clear();   
      
    //声明字符集   
      System.Text.Encoding   iso8859,gb2312;   
      
    //iso8859   
      iso8859         =   System.Text.Encoding.GetEncoding("iso8859-1");   
      
    //国标2312   
      gb2312   =   System.Text.Encoding.GetEncoding("gb2312");   
      
    byte[]   bt;   
      bt   
    =   iso8859.GetBytes(xml);   
      xml   
    =   gb2312.GetString(bt);   
      ds.ReadXml(
    new   System.IO.StringReader(xml));   
      
    return   ds;   
      }
       
  • 相关阅读:
    According to TLD or attribute directive in tag file, attribute end does not accept any expressions
    Several ports (8080, 8009) required by Tomcat v6.0 Server at localhost are already in use.
    sql注入漏洞
    Servlet—简单的管理系统
    ServletContext与网站计数器
    VS2010+ICE3.5运行官方demo报错----std::bad_alloc
    java 使用相对路径读取文件
    shell编程 if 注意事项
    Ubuntu12.04下eclipse提示框黑色背景色的修改方法
    解决Ubuntu环境变量错误导致无法正常登录
  • 原文地址:https://www.cnblogs.com/moweiran/p/3501275.html
Copyright © 2011-2022 走看看