项目中用到Oracle,服务器端使用AMERICAN_AMERICA.WE8ISO8859P1字符编码,我没有修改服务器端的权限,只能修改客户端.但是客户端无论我换什么字符编码均得到乱码,最后我将客户端的字符编码也设为AMERICAN_AMERICA.WE8ISO8859P1,然后从程序中下手. AMERICAN_AMERICA.WE8ISO8859P1,这个字符编码是西欧字符编码,对应于.Net的就是iso-8859-1字符编码,所以只需要改到系统的默认字符编码就行了. 写一个函数: /**/ /// <summary> /// 将西欧字符编码转换成GB2312 /// </summary> /// <param name="s"></param> /// <returns></returns> public static string Convert8859P1ToGB2312( string s) { return System.Text.Encoding.Default.GetString(System.Text.Encoding.GetEncoding("iso-8859-1").GetBytes(s)); } 转载于:https://www.cnblogs.com/fxwdl/archive/2007/05/23/756605.html