免費文字編碼轉換器 — 修復亂碼,轉換為 UTF-8
修復顯示怪異字元的字幕、CSV 和文字檔案:檢視檔案在每種編碼下的樣子,選出可讀的那一種,並儲存為 UTF-8、UTF-8 with BOM(適用於 Excel)、UTF-16 或舊式內碼表。可一次處理多個檔案。在瀏覽器中執行,不會上傳任何內容。
把文字、字幕或 CSV 檔案拖到這裡,或點選選擇
TXT, SRT, VTT, ASS, SSA, SUB, SBV, LRC, CSV, TSV, MD, JSON, XML, HTML, HTM, INI, CFG, LOG, NFO, CUE, M3U, TEX, YML, YAML, PROPERTIES · 在你的裝置上處理
或按 Ctrl+V 從剪貼簿貼上
你可以一次拖放多個檔案
你的檔案永遠不會離開你的裝置。所有處理都在你的瀏覽器中本地進行。
工作原理
文字檔案不會註明自己使用的編碼。BOM 或有效的 UTF-8 可以作為證據;否則,本頁會用瀏覽器支援的每種內碼表解碼前 64 KB,並根據錯誤猜測的跡象為每個結果打分:替換字元、控制碼、製表符號、單字內部大小寫翻轉、同時出現多種文字的字母,對於中文、日文和韓文,則看該語言最常用字元出現了多少。最有可能的一項會被勾選,每一項都會顯示檔案自己的幾行內容,方便你看出哪個讀起來正確。
- 1新增檔案拖入一個或多個文字檔案:字幕(SRT、VTT、ASS)、CSV、TXT、歌詞等。它們在你的裝置上讀取。
- 2選擇可讀的版本每種編碼都會顯示檔案的前幾行,包括帶重音符號或非拉丁字母的內容。最有可能的一項已勾選;如果看起來仍然不對,請選擇另一項。
- 3選擇輸出格式幾乎所有場合用 UTF-8,Excel 用 UTF-8 with BOM,也可選 UTF-16,或給舊裝置使用舊式內碼表。換行字元可以保持不變或更改。
- 4下載單個檔案會以原檔名返回;多個檔案會打包為 ZIP。
你的檔案在此瀏覽器中轉換,不會上傳。
指南
操作範例
一個名為 film.srt 的兩條字幕檔案,由舊的 Windows 程式以 Windows-1251 編碼、Windows 換行字元儲存,內容是“Привет, как дела?”和“Хорошо, спасибо.”兩行,共 107 位元組。在播放器中它顯示為“Ïðèâåò, êàê äåëà?”。把它拖到頁面上。檔案顯示為“film.srt · 107 B”,在“將檔案讀取為”下你會看到五個版本,每個都帶有檔案自己的行。在英文瀏覽器上,第一個被勾選並標有“最可能”:“Windows-1252(西歐)”,顯示為“Ïðèâåò, êàê äåëà?”。第三個“Windows-1251(西里爾文)”顯示為“Привет, как дела?”。勾選它。保持“另存為”為“UTF-8”、“換行字元”為“保持不變”,點選“轉換檔案”,頁面顯示“已轉換。”下載的檔案仍叫 film.srt,現在是 133 B,因為每個西里爾字母在 UTF-8 中佔兩個位元組。
使用哪些設定,以及限制
- 以預覽行為準,而不是看徽章。 只有位元組順序標記或有效的 UTF-8 才能獲得“確定”徽章,並顯示訊息“此檔案肯定是 UTF-8。”對於其他情況,工具會對前 64 KB 中每種讀法的可疑程度打分:替換字元、控制字元、同時出現多種文字的字母、單字中間的大寫字母,對於中文、日文和韓文,還會看非常常見的字元出現了多少。分數相同時,以你的瀏覽器語言常用的內碼表優先。“最可能”徽章只是猜測,所以請閱讀每個選項下面的行。
- 五個都不對時,開啟“顯示全部 19 種編碼”。 起初只顯示五個版本。“顯示全部 19 種編碼”會列出工具能讀取的每一種:UTF-8、UTF-16 LE 和 BE、Windows-1250 至 1258、Windows-874、KOI8-R、KOI8-U、Shift_JIS、GBK、Big5 和 EUC-KR。每個預覽最多顯示三行含有普通 ASCII 以外字元的內容,每行截斷為 120 個字元。如果你從完整列表中選了一個,再點選“顯示較少”,下方會有一行提示,例如“按 Windows-1251(西里爾文)讀取。”
- 用“另存為”選擇輸出。 列表中有“UTF-8”(預設)、“帶 BOM 的 UTF-8”、“UTF-16 LE(帶 BOM)”、Windows-1250 至 1258、Windows-874、KOI8-R 和 KOI8-U。頁面說明 UTF-8“幾乎適用於所有應用、播放器和網站。”而帶 BOM 的 UTF-8“最適合用 Excel 開啟的 CSV 檔案。”舊內碼表只適用於舊裝置或舊程式。Shift_JIS、GBK、Big5 和 EUC-KR 只能讀取,不能寫出。輸入中開頭的位元組順序標記會先被丟棄,然後再新增新的(如果有)。
- 如果程式需要,請設定換行字元。 “換行字元”有“保持不變”(預設)、“LF(Mac、Linux)”和“CRLF(Windows)”。LF 和 CRLF 會先把現有的每個換行(包括舊式單獨的回車符)統一成一種,所以混合換行的檔案輸出後保持一致。該選擇適用於批處理中的每個檔案。對於純英文檔案,工具會提示:“如果某個應用需要 BOM 或其他換行字元,請轉換它。”
- 一次轉換多個檔案。 拖入多個檔案,或點選“新增更多檔案”。每個檔案都有自己的“將檔案讀取為”選項;用檔名按鈕在它們之間切換。“另存為”和“換行字元”適用於所有檔案。一個檔案以自己的檔名下載。多個檔案則下載為 ZIP,命名類似 converted-utf-8.zip,重名的檔案編號為 -2、-3。超過 50 MB 的檔案會被跳過。如果頁面提示“無法轉換這些檔案。請一次少轉幾個。”,請移除一些檔案後再次轉換。
- 了解工具不會改動什麼。 它接受 .txt、.srt、.vtt、.ass、.ssa、.sub、.sbv、.lrc、.csv、.tsv、.md、.json、.xml、.html、.htm、.ini、.cfg、.log、.nfo、.cue、.m3u、.tex、.yml、.yaml 和 .properties 檔案。它只更改編碼,並在需要時更改換行字元。檔案內的文字不會被編輯,所以在頭部聲明了舊編碼的 HTML 或 XML 檔案,轉換後仍然宣告舊編碼,你需要自己修改那一行。
常見問題及解決方法
- 提示“已跳過 1 個檔案:無法讀取或超過 50 MB。”
- 每個檔案必須不超過 50 MB,且瀏覽器必須能讀取它。如果檔案在 OneDrive、iCloud 或 Google Drive 中,請把副本儲存到此裝置再新增。對於非常大的日誌,請先把它切成幾部分。你新增的其他檔案仍然保留在列表中。
- 提示“此檔案只包含普通的英文字母、數字和標點,在所有編碼中讀起來都一樣。”
- 這裡沒有可供選擇的編碼列表,因為檔案中每個位元組都小於 128,所以選擇別的編碼不會改變任何一個字元。如果某個應用仍然顯示奇怪的字元,問題就不在此檔案的編碼。如訊息所說,你仍然可以轉換它,以新增 BOM 或更改換行字元。前 4,096 個位元組中含有零位元組的檔案不會被這樣處理。
- 提示“有 2 個字元無法以此編碼儲存,已變成“?”。請選擇 UTF-8 以保留所有字元。”
- 你在“另存為”下選擇了舊的單位元組內碼表,而文字中有它無法容納的字元。每個這樣的字元都被寫成了問號,數字就是它們的個數。轉換後的檔案可供下載,但這些字元現在是問號,所以請不要使用它。請選擇“UTF-8”並重新轉換,以保留所有字元。只有在裝置需要時才使用舊內碼表,並選擇適合你語言的那一個。
- 沒有一個版本讀起來是正確的。
- 開啟“顯示全部 19 種編碼”。正確的那個可能排在前五名之外。在英文頁面上,以 Windows-1252 儲存、含有 ¿ 或 ¡ 的西班牙語檔案可能排名靠後,因為這類標點會拉低某種讀法的得分。在較短的檔案上,幾種內碼表的得分往往相同,所以正確的可能在其中的任何位置。請對照你自己語言的行,勾選讀起來自然的那一個。
- 提示“此檔案肯定是 UTF-8。”但文字看起來仍然不對。
- 這些位元組是有效的 UTF-8,所以工具完全按原樣讀取它們。像“é”這樣的奇怪字元此時已是文字本身的一部分,通常是之前某次錯誤轉換的結果,把相同的位元組按其他編碼讀取也無法撤銷。請回到第一次轉換之前的原始檔案,改為新增那一個。
對比分析
能夠按所選編碼重新開啟檔案並另存為 UTF-8 的文字編輯器可以完成同樣的工作,如果你還想編輯文字,它更適合你。此工具把各種候選讀法與檔案自己的行並排展示,一次轉換多個檔案,且無需安裝任何東西。檔案在你的瀏覽器中讀取和轉換,不會上傳。它只更改編碼和換行字元。它對前 64 KB 打分來給猜測排名,不會嘗試修復因之前的錯誤轉換而損壞的文字。它無法寫出 Shift_JIS、GBK、Big5 或 EUC-KR。