WebClient.DownloadString()方法返回特殊字符

时间:2019-06-02 20:10:55

标签: c# asp.net

我的应用程序是asp.net应用程序。为了使其非常简单,我有one.aspx,它只写了问候。在URL中执行时,效果很好。

现在我有two.aspx并具有以下代码:

   string downloadurl = String.Format(@"http://{0}", rawUrl.Authority + "1.aspx");
            using (var webClient = new System.Net.WebClient())
            {
                webClient.Encoding = System.Text.Encoding.ASCII;
                webClient.Headers.Add("Content-Type", "text/html; charset=ISO-8859-1");
                result = webClient.DownloadString(downloadurl);

            }
            contentpage.InnerHtml = result;

该代码实际上以1.aspx格式下载html输出。

这是我得到错误的地方。结果是一组特殊字符,而不是输出Hello。我尝试了UTF-8ASCII,但似乎没有任何效果。

输出

  

“ \ u001f ‹\ b \ 0 \ 0 \ 0 \ 0 \ 0 \ u0004 \ 0 \ u008dQMo,@ \u0010½7é\u007fØì\ u000fp \u0001ÓX\ u0012h \ u0003tK = P \” \ u0010´ ^ \ f“ ]Ùò±   ‹Â¿\u0017Ô\ u0003¦ \u0017ç2y3ïeÞÌh” \ u001f \ nP \u0010'òD‡\ u0015o \ u0004 \u0004ѯ`¼Ôá\ f…ŒV-iF<‹šª{ß³DW$ \ t,!ÃQ+÷çç '\ u008d•U +€è+¢%”!(£b @»]¸k?0 \ u0002 | \u0015Ý\u0015ŽQÞ\u000e¤Ø¢Õb^ÒWPM‰›Õ‹ìäl〜\ u000eYvv @ ×fÊ\u009dîC„ |³RLc»ì1yÁ'yî\ u0004–ºíë¿8u£žºÔD¼ñ¼\u0018QjÕ'-ûÞ^‡\ 0 \ r \ u000e \u001fõhãoì\ u0019 \u0081ëý3;éÜ\«'õùª(êu\ u0002) –°ã\u0004ŽñEòœO\u0018èž2*.ÓÄpiø¸VCã\u0003.Ë\ u009d \u0001LM4oÇ\ u0001 \ 0 \ 0“

1 个答案:

答案 0 :(得分:0)

您需要定义内容类型和utf格式

https://dotnetfiddle.net/eIdm1D