DownloadString() 是怎麼做到的呢?
他是先看 WebRequest 得到的 Header 裡面是否有 Content-Type ,如果有指定的話,再看他裡面是否指定 charset,如果有,就以此編碼去讀取 stream。
如果沒有指定的話呢?.Net 2.0 的 WebClient 多提供了 Encoding 屬性,換句話說,就會以 Encoding 屬性指定的編碼去讀取 stream。
事實上,大部分的 browser 並沒這麼笨~他還會先去偷看網頁內容是否有指定 Content-Type 這個 meta tag:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
如果有的話,就會以此 charset 所指定的編碼來讀取。
沒有留言:
張貼留言