看板 C_Sharp 關於我們 聯絡資訊
※ 引述《qweqweqweqwe (啪)》之銘言: : 剛剛寫了一下 : 最後決定用抓meta charset的方法 : (因為試了 response header.. 成功率不高).. : http://s93.tku.edu.tw/~493522469/GetResponse.txt : 這是我的程式碼@@ : 有空的人可以幫忙看一下有什麼可以改進效率的地方嗎 看了一下... 效率方面沒有意見. (本身認為.NET的RegEx效率比較差... 不過這也許只是我的偏見.) 不過有兩個地方想提一下: 1) 看這兩行: if (IsGBCode(words[i].ToString()) || IsGBKCode(words[i].ToString()) || IsBig5Code(words[i].ToString())) byte[] bytes = Encoding.GetEncoding("GBK").GetBytes(word.ToString()); 為什麼ToString()完又要再ToString()呢? (這會在compile成release時自動 被compiler除掉, 因此不算效能問題...) 2) 檢查code時最好標點和標點後的空白豁免檢查, 因為沒有這些的話 一整段實在不好看... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.73.76.102
qweqweqweqwe:^^謝謝 那如果不用regex的話 還有什麼方法可以達到 09/28 23:54
qweqweqweqwe:相同的效果? 09/28 23:55
leicheong:HTML部分我會feed到XMLTextReader,找meta tag看attrib. 09/29 09:38
leicheong:Response header我會直接用IndexOf()加SubString(). 09/29 09:39
leicheong:因為charset tag只會出現一次. 09/29 09:41