我的Web.Config配置如下:
<?xml version="1.0" encoding="gb2312" ?>
……
<globalization fileEncoding="gb2312" requestEncoding="gb2312"
responseEncoding="utf-8" />
页面: webx.aspx
有:<meta http-equiv="Content-Type" content="text/html;charset=gb2312" >在页面上放了一个Text1 当我输入中文时在后台获取Text1.Text值是都是乱码
试图通过以下方法获取数据:
Encoding ascii = Encoding.GetEncoding("gb2312");
Encoding unicode = Encoding.UTF8 ;
byte[] unicodeBytes = Encoding.Default.GetBytes(unicodeString);
byte[] asciiBytes = Encoding.Convert(unicode,ascii, unicodeBytes);
char[] asciiChars = new char[ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
string asciiString = new string(asciiChars); 但是在中文的操作系统上得到的值 asciiString 是正确的
而在英文版的操作系统上 asciiString 还是给我乱码!请问各位我应该怎么解决它?
<?xml version="1.0" encoding="gb2312" ?>
……
<globalization fileEncoding="gb2312" requestEncoding="gb2312"
responseEncoding="utf-8" />
页面: webx.aspx
有:<meta http-equiv="Content-Type" content="text/html;charset=gb2312" >在页面上放了一个Text1 当我输入中文时在后台获取Text1.Text值是都是乱码
试图通过以下方法获取数据:
Encoding ascii = Encoding.GetEncoding("gb2312");
Encoding unicode = Encoding.UTF8 ;
byte[] unicodeBytes = Encoding.Default.GetBytes(unicodeString);
byte[] asciiBytes = Encoding.Convert(unicode,ascii, unicodeBytes);
char[] asciiChars = new char[ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
string asciiString = new string(asciiChars); 但是在中文的操作系统上得到的值 asciiString 是正确的
而在英文版的操作系统上 asciiString 还是给我乱码!请问各位我应该怎么解决它?
还是不行啊!只能用在中文版的操作系统上,英文版上还是出错!我倒!
Encoding unicode = Encoding.UTF8 ;
byte[] unicodeBytes = Encoding.Default.GetBytes("快点显示中文啊");
byte[] asciiBytes = Encoding.Convert(unicode,ascii, unicodeBytes);
char[] asciiChars = new char[ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
string asciiString = new string(asciiChars);
但是它却是显示:???????
我该怎么办?
改为
byte[] unicodeBytes = unicode.GetBytes(unicodeString);
试试
俺对你的敬仰如滔滔江水连绵不绝,更如黄河泛滥一发不可收拾!不过你能不能帮忙解释一下,您老怎么会想到用unicode.GetBytes(unicodeString);呢?!
而 Encoding unicode = Encoding.UTF8 ;
谢谢!
responseEncoding="utf-8" />
全用utf-8就可以解决问题了. 试试吧
responseEncoding="utf-8" />
全用utf-8就可以解决问题了. 试试吧