急啊!乱码!搞到凌晨3点都没解决的问题?

huimouse 2004-12-31 03:10:45
小弟用C#写了一个程序调用远程的WEB页面,WEB页面将信息保存到SQL SERVER数据库中,但发现保存的中文信息全部变成了乱码!请教各位高手如何解决!
...全文
206 点赞 收藏 15
写回复
15 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Bruce_H21 2005-01-05
是基于调用还是基于读写?
如果是读写的话,记得在streamReader或streamWriter的参数中加入编码
... StreamReader(... , System.Text.Encoding.GetEncoding("gb2312"))
streamWriter也一样 ,其中的编码值自己选择。

还有创建文件时也会涉及到编码。检查一下你的文件里是否包含了类似于 CreateText 的方法,他只是用UTF-8码创建的文件.如果你的系统是基于gb2312码的话 就要改一改创建文件的方式了。用StreamWriter了
回复
wzhengrong2004 2005-01-01
在webclient获取页面代码的时候指定一下编码方式

我以前做过,记得是gb2312的

utf-8肯定是不行的
回复
fengyecsdn 2005-01-01
全部用 默认就可以了
Default;


还是要注意一下数据库 数据库的字符也要配好
比如UNICODE特性等等!
回复
wf21cn 2004-12-31
写入和读出时应该用同样的编码
回复
huimouse 2004-12-31
如果数据库中保存的格式是GB2312的,我怎么去转换为UTF-8?
回复
fengyecsdn 2004-12-31
那就是你取出来的时候编码没搞对
多看看编码是不是配对了
回复
huimouse 2004-12-31
我们在IE上直接调用URL写入数据库是正常的,就是我的程序调用的时候,写的是乱码!
回复
Bruce_H21 2004-12-31
应该注意一下你调用 子页面的编码和 本身页面的编码有没有不同。
打开你需要调用的页面 查看页面的编码,再找你自己的,肯定不能错码。
回复
jamesfay 2004-12-31
确认一下数据库里面的字段类型时nvarchar,n代表unicode
回复
nga96 2004-12-31
是呀,一般就用这个的
回复
zhangzs8896 2004-12-31
utf-8换成GB2312试一下
回复
mobydick 2004-12-31
System.Text.Encoding.(这里选择你需要的编码方式)
一般使用
System.Text.Encoding.Default;
回复
smokecool 2004-12-31
一个小例子,希望有帮助

Byte[] Buffer=new Byte[65535];
//必须设定0(系统默认的代码页)的编码方式,否则无法支持中文
string s=Encoding.GetEncoding(0).GetString(Buffer);

enjoy
回复
hanyaocsdn 2004-12-31
up
回复
mathsword 2004-12-31
同意楼上,写进去与读出来编码相同就可以了.
回复
相关推荐
发帖
C#
创建于2007-09-28

10.6w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2004-12-31 03:10
社区公告

让您成为最强悍的C#开发者