none
WebClient DownloadData的参数Uri含有中文时,出现乱码问题 RRS feed

  • 问题

  • public static string HttpPost(Uri uri)
            {
                WebClient http = new WebClient();
                try
                {
                    byte[] data = http.DownloadData(uri);
                    string result = Encoding.Default.GetString(data);
                    if (result.StartsWith("Error"))
                    {
                        return "";
                    }
                    return result.Trim();
                }
                catch (WebException we)
                {
                    log.Error("HttpPost => " + we.Message + ":" + uri.ToString());
                    return "WebException";
                }
                catch (Exception e)
                {
                    log.Error("HttpPost => " + e.Message + ":" + uri.ToString());
                    return "";
                }
                finally
                {
                    if (http != null)
                        http.Dispose();
                }
            }

    如上代码,当uri中含有中文时,如:http://191.168.11.205:7001/ds/serviceAction.do?spe_config_file=/module/xml/db/manager/InsertDutyEvalua.xml&eva_content=测试&eva_level=2

    这个“测试”在远程被JAVA的ibatis框架处理插入oracle数据库后,显示为乱码:娴嬭瘯;如果直接将url通过IE请求,结果正常,请问怎么处理?

    2012年7月4日 7:24

答案

全部回复