看板 java 關於我們 聯絡資訊
※ 引述《pupuliao (pupu)》之銘言: : code :http://goo.gl/NVlLN3 : 這是我自己寫得一支小程式 : 會去論壇抓文章後 存成txt檔 : 最近聽到有人反映說,如果丟回瀏覽器讀取,會變成亂碼 : 要重新設定編碼 : 我發現是 我好像沒有設定BOM : 所以想問一下,我要如何在寫入前,設定BOM : 謝謝 OTZ 檔案開頭寫入一個"\ufeff",這個「字」就是 BOM 然後你可能會收到另一群人反應「檔案開頭出現一個奇怪的亂碼字」 另,要丟給瀏覽器看的話,我會建議不要加 BOM,而是寫成 html 檔案 - 開頭加上 '<html><head><meta charset="UTF-8"></head><body>' - 中間把每個斷行(\n 或 \r\n)都替換成 '<br>' - 結尾加上 '</body></html>' -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.227.55.54 ※ 文章網址: http://www.ptt.cc/bbs/java/M.1404782025.A.41D.html ※ 編輯: hiigara (61.227.55.54), 07/08/2014 09:14:10
LPH66:其實不會有亂碼字, 因為 \ufeff 實際上是 ZWSP 07/08 13:38
LPH66:Zero-width space 零寬度空白, 所以即使當成正常方式解碼 07/08 13:39
LPH66:也不會有亂碼字出現 (其實 BOM 會選這個字有一半也是這理由) 07/08 13:40
LPH66:如果是根本沒解碼的話全篇亂碼也不差這一個 07/08 13:40
LPH66:修正: \ufeff 叫做 ZWNBSP, zero-width non-breaking space 07/08 13:44
LPH66:不過那似乎是舊的 unicode 定義, 現在新版的 \ufeff 就單純 07/08 13:44
LPH66:只用來當做 BOM 用了 07/08 13:44
dream1124:推 07/11 21:02