当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net读取数据库乱码的解决完全方案

ASP.NET
给Asp.Net初学者的关于继承和多态性的例子
新手入门:C++下的引用类型
初学者的福音:游戏开发新手入门指南
C/C++中利用空指针简化代码,提高效率
获取转向地址的URL的源文件(可自定义REFER)
asp.net中执行存储数据操作时数据被自动截取的一种情况
.NET中防止Access数据库下载
vs.Net2003无法打开或创建Web应用程序若干解决办法.
我今天开始正式学习.net遇到的问题
无法在Web服务器上启动调试。未将项目配置为进行调试
找不到类型或命名空间名称“Server”(是否缺少 using 指令或程序集引用?)
ASP.NET页面间的传值的几种方法
几个ASP.NET技巧
让Asp.NET的DataGrid可排序、可选择、可分页
web.config文件的中文解释
用DataReader还是DataSet?
ASP.NET中数据库操作初步
ExecuteReader(),ExecuteNonQuery(),ExecuteScalar(),ExecuteXmlReader()之间的区别
如何在DataGrid控件中实现自定义分页
ADO.NET 的最佳实践技巧

ASP.NET 中的 asp.net读取数据库乱码的解决完全方案


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 143 ::
收藏到网摘: n/a

在下面的映射表中加入gb2312 和gbk,就不会有乱码了,源码在下面提供一位网友写的程序改了改

private static void LoadCharsetMap()
{
mapping = new Hashtable();

mapping.Add( "big5", "big5" ); // Traditional Chinese
mapping.Add( "sjis", "sjis" ); // Shift-JIS
mapping.Add( "gb2312", "gb2312" );
mapping.Add( "latin1", "latin1" );
mapping.Add( "latin2", "latin2" );
mapping.Add( "latin3", "latin3" );
mapping.Add( "latin4", "latin4" );
mapping.Add( "latin5", "latin5" );
mapping.Add( "greek", "greek" );
mapping.Add( "hebrew", "hebrew" );
mapping.Add( "utf8", "utf-8" );
mapping.Add( "ucs2", "UTF-16BE" );
mapping.Add( "cp1251", 1251 );
mapping.Add( "tis620", 874 );
mapping.Add( "binary", "latin1" );

// relatively sure about
/**//* mapping.Add( "default", 0 );
mapping.Add( "cp1251", 1251 ); // Russian
mapping.Add( "win1251", 1251 );
mapping.Add( "gbk", 936 ); // Simplified Chinese
mapping.Add( "cp866", 866 );
mapping.Add( "euc_kr", 949 );

// maybe, maybe not
mapping.Add( "win1250", 1250 ); // Central Eurpoe
mapping.Add( "win1251ukr", 1251 );
mapping.Add( "latin1_de", 1252 ); // Latin1 German
mapping.Add( "german1", 1252 ); // German
mapping.Add( "danish", 1252 ); // Danish
mapping.Add( "dos", 437 ); // Dos
mapping.Add( "pclatin2", 852 );
mapping.Add( "win1250ch", 1250 );
mapping.Add( "cp1257", 1257 );
mapping.Add( "usa7", 646 );
mapping.Add( "czech", 912 );
mapping.Add( "hungarian", 912 );
mapping.Add( "croat", 912 ); */

/**//* ("gb2312", "EUC_CN");
("ujis", "EUC_JP");
("latvian", "ISO8859_13");
("latvian1", "ISO8859_13");
("estonia", "ISO8859_13");
("koi8_ru", "KOI8_R");
("tis620", "TIS620");
("macroman", "MacRoman");
("macce", "MacCentralEurope");
*/

}