当WebRequest 的Uri中有中文时的问题 使用WebRequest,当Url中的中文时,它会自动将中文编码成UTF-8的编码但是发UTF8编码在很多Asp中无法识别有没有办法让它编码成GB2312 ? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 string str="中文乱码";Response.Write("<script language='javascript'>window.location.replace('log_browse.aspx?Pass="+ HttpUtility.UrlEncode(str,System.Text.Encoding.GetEncoding("gb2312"))+"')</script>"); 呵呵,不是楼上的这个意思例:string Uri="htttp://www.aaa.com?a=中文";WebRequest=WebRequest.Create(Uri);这样的话,发出去的请求中的“中文”两字就变成UTF8编码了,与JavaScript完全没有关系的有什么办法让WebRequest将中文编码成GB2312码吗? string Uri="htttp://www.aaa.com?a="+HttpUtility.UrlEncode("中文",System.Text.UnicodeEncoding);即可http://sz.luohuedu.net/xml/ShowDetail.asp?id=YUEMA9OS-W1DN-4KIS-8RIE-S742LLJ91L6Q 参照http://dotnet.aspx.cc/ShowDetail.aspx??id=YUEMA9OS-W1DN-4KIS-8RIE-S742LLJ91L6Q 多谢 net_lover(孟子E章) 但是链接不是我拼的,是取过来的,所以要对一个整个的URL进行编码我现在是这样解决的自已写了一个方法来编码 public static string UrlGBEncode(string Url) { string rtValue=""; byte[] ubts=System.Text.UTF8Encoding.UTF8.GetBytes(Url); byte[] gbts; System.Text.Encoding GB2312 = System.Text.Encoding.GetEncoding("GB2312"); gbts=System.Text.Encoding.Convert(System.Text.UTF8Encoding.UTF8, GB2312, ubts); for(int i=0;i<gbts.Length;i++) { if(gbts[i]>127) rtValue+="%" + System.Convert.ToString(gbts[i], 16); else rtValue+=(char)gbts[i]; } return rtValue; } System.Array.IndexOf问题 treeview中点击节点时treeview不可见,请给个简单的代码 请问如何单独指定SqlDataAdapter.selectcommand的connection? 在WinForm中如何给DataGridView高效着色? 还是值类型和引用类型的问题 C#电子书 一个怪问题。解决马上有分 郁闷 TcpListener 类 ,送分了。 使用C#控制台程序连接Oracle数据库出现的问题,请各位给予解决,谢谢 http命名空间问题 疑難雜症:在DataTale中如何實現SQL的匯總查詢功能??? 高难度问题,请大家共同分析!
Response.Write("<script language='javascript'>window.location.replace('log_browse.aspx?Pass="+ HttpUtility.UrlEncode(str,System.Text.Encoding.GetEncoding("gb2312"))+"')</script>");
例:
string Uri="htttp://www.aaa.com?a=中文";
WebRequest=WebRequest.Create(Uri);这样的话,发出去的请求中的“中文”两字就变成UTF8编码了,与JavaScript完全没有关系的
有什么办法让WebRequest将中文编码成GB2312码吗?
即可http://sz.luohuedu.net/xml/ShowDetail.asp?id=YUEMA9OS-W1DN-4KIS-8RIE-S742LLJ91L6Q
我现在是这样解决的自已写了一个方法来编码
public static string UrlGBEncode(string Url)
{
string rtValue="";
byte[] ubts=System.Text.UTF8Encoding.UTF8.GetBytes(Url);
byte[] gbts;
System.Text.Encoding GB2312 = System.Text.Encoding.GetEncoding("GB2312");
gbts=System.Text.Encoding.Convert(System.Text.UTF8Encoding.UTF8, GB2312, ubts);
for(int i=0;i<gbts.Length;i++)
{
if(gbts[i]>127)
rtValue+="%" + System.Convert.ToString(gbts[i], 16);
else
rtValue+=(char)gbts[i];
}
return rtValue;
}