使用client.DownloadString(url);给出奇怪的方形符号c#.net 3.5

时间:2011-09-12 23:26:07

标签: c# webclient symbols

我正在使用webclient从网站获取源html代码并将html放在文本框中

但由于某些原因,在文本框中我是一个很奇怪的符号

      using (WebClient cliente = new WebClient())
            {
                textbox.Text = cliente.DownloadString(url);
            }

我正在使用c#.net 3.5

http://imageshack.us/photo/my-images/691/weirdssymbols.jpg/

2 个答案:

答案 0 :(得分:0)

这些是不可打印的新行字符的表示。

尝试

 textBox.Multiline = true; 
 using (WebClient cliente = new WebClient())
 {
      textbox.Text = cliente.DownloadString(url);
 }

答案 1 :(得分:0)

我认为这是与编码有关的问题。 你的字符串是utf-8编码的吗?

您需要将webclient编码设置为等于网页enconding(如果您管理页面,将其设置为utf-8,则是更好的解决方案)。

http://msdn.microsoft.com/en-us/library/system.net.webclient.encoding%28v=vs.80%29.aspx

然后,我认为你不会再得到坏方块了,但是我不知道文本框使用的编码,这可能是一个问题(我再次假设他们使用utf-8,不知道它们是否可配置)。

修改

没有看到你的评论,是的我认为这些正方形是\ r \ n字符,这些(可能)写在页面上的编码与uft-8不同(所以这不是你的错,但这是一个问题该网页的开发者创建了。)

& acute无法转换,你必须用你想要的东西替换string.replace(& html用来显示一些特殊的字符)