看板 Ruby 關於我們 聯絡資訊
環境: 1.9.2 狀況: 在原本寫死在terminal 的時候 可以正常顯示 但是在網頁顯示的時候 會有問題。 狀況如下: ----------------------------------------------------------------- #先用此式抓取原始碼 ,並且以UTF-8讀入 codeString = open(url).read.encode!('UTF-8','UTF-8',:invalid =>:replace) - - 略(字串處理) - - i = 0 while i < resultData.size do puts resultData[i].to_s i = i + 1 end ================================================ 結果如下圖: (裡面可以顯示出 簡體中文) http://ppt.cc/SXCU ----------------------------------------------------------------------- 可是如果用 (CGI輸出 )html (程式碼前後加上HTML 語法) 結果如下圖: http://ppt.cc/zzny 會顯示成unicdoe 的樣子... 我有試過用unescape 也是沒辦法..... 照理講在terminal裡面可以"正常顯示" ,為什麼在html上是無法顯示的呢? (browser已經設定成utf-8 , 然後輸出html的時候 header也有設定content : utf8) 但是輸出仍是以unicode 顯示 。 有試過輸出成xml ,也是不行(藉由http或是browser 樹狀顯示)->會顯示unicode 但是如果是以寫檔方式 (意即在terminal )就可以正常顯示。 查過很多方法了都不行,麻煩了 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.123.102.72
evanc3:有試過加 <meta charset="utf-8"> 嗎? 06/19 21:28
larrywhy:試過了 後來發現是 server 會先經過編碼 已解決 謝謝! 06/24 10:01