JSON 轉 Base64 編碼器
將 JSON 檔案轉成單行 Base64 文字。引號、大括號與換行在環境變數、YAML 欄位和 API 請求內容中容易出錯,編碼後就能完整保留。解碼後會得到一模一樣的位元組。
資料轉換器
或將CSV, TSV, TXT … 檔案拖曳到這裡 ·
每個檔案最大 95 MB· 最多 20 個檔案· 30 分鐘後刪除
檔案會在我們的伺服器上處理,並於 30 分鐘後刪除。
CSV 與文字檔中分隔欄位的字元,讀取與寫入都會使用。自動會從輸入偵測,並以逗號寫出。
UTF-8 適用於所有語言。若 Windows 上的 Excel 開啟 CSV 時重音字元或亞洲文字出現亂碼,請選擇含 BOM 的 UTF-8。
適用於 Excel、ODS 與 Numbers 輸入:只轉換第一個工作表,或轉換所有工作表(每個工作表輸出一個 CSV 並打包成 ZIP,或每個工作表對應一個 JSON 鍵)。
新試算表中工作表索引標籤的名稱,最多 31 個字元。
物件陣列會以欄位名稱作為每列的鍵;陣列的陣列較精簡,並將標題保留為第一個陣列。
包住所有列的外層元素名稱;每一列會成為其中的 <row>。
用於 CREATE TABLE 與 INSERT 陳述式。僅限字母、數字與底線。
不同資料庫的引號與欄位類型略有差異;請選擇您要匯入的資料庫。
將日期儲存格統一改寫成一種格式。ISO (2026-10-18) 對資料庫與程式碼最保險;保持原樣則維持來源中的顯示方式。
使用方式
- 1
上傳 JSON 檔案
加入 .json、.jsonl 或 .ndjson 檔案,例如服務帳戶金鑰或設定檔。每批最多 20 個檔案,每個檔案最大 95 MB。
- 2
決定是否加前綴
預設為純 Base64。只有當文字要放進需要 data: URL 的 HTML 或 CSS 屬性時,才在進階設定中開啟 Data URI 前綴。
- 3
編碼並複製
按下轉換為 Base64 文字,下載結果,再把字串貼到你的機密儲存區、manifest 或請求本文中。
把 JSON 編碼成 Base64 並不會改變資料,只是把它重新包裝成純字母與數字,讓它能通過會弄壞大括號、引號和換行的地方。
為什麼要把 JSON 檔案編碼成 Base64
最常見的情況是憑證檔。雲端服務商提供的服務帳戶金鑰是 JSON 檔,但你的 CI 系統、主機管理後台或容器平台只提供單行文字欄位來存放機密。直接貼上原始 JSON,會在第一個換行或第一個未跳脫的引號處出錯。編碼成 Base64 後,同一把金鑰就成為一整串不間斷的字串,應用程式啟動時再解碼即可。
Base64 的源頭是電子郵件:1996 年 RFC 2045 定義的 MIME 用它讓附件能通過只支援 7 位元文字的郵件伺服器。2006 年,這套字元集又在 RFC 4648 中獨立標準化。代價是檔案變大,因為每 3 個位元組會變成 4 個字元。圖片與其他二進位檔案可使用圖片轉 Base64,同樣編碼並附上對應的 data URI。如果接收端讀的是 YAML 而不是 Base64 欄位,JSON 轉 YAML可能就夠了。
JSON 轉 Base64 範例
{"env":"prod","retries":3}
eyJlbnYiOiJwcm9kIiwicmV0cmllcyI6M30=哪些地方需要 Base64 編碼的 JSON
| 機構 | 規定 | 來源 |
|---|---|---|
| Kubernetes Secrets | data 底下的每個值都必須是 Base64;要掛載 JSON 金鑰檔,須先編碼。 | kubernetes.io |
| GitHub REST API | 建立或更新檔案內容的端點,要求檔案(包含 .json 檔)以 Base64 放在 content 中。 | docs.github.com |
| JSON Web Tokens (RFC 7519) | JSON 標頭與宣告各自以 base64url 編碼,再用點號串接。 | — |
| 電子郵件附件 (MIME) | .json 附件以 Base64 傳輸編碼寄送,才能通過純文字的郵件伺服器。 | — |
- Base64Base 64 編碼 · RFC 4648 編碼
- 用 64 個安全字元表示任意位元組的方法:A–Z、a–z、0–9、+ 和 /,並以 = 補位。每 3 個輸入位元組會變成 4 個輸出字元,因此文字比檔案長約三分之一。它可逆且不需要金鑰,所以只是傳輸格式,不是安全措施。
JSON 與 Base64 格式說明
JSON
JavaScript 物件表示法
JSON 是用於結構化資料的輕量文字格式,由 Douglas Crockford 在 2000 年代初期推廣,並標準化為 RFC 8259 和 ECMA-404。它以簡單易讀的語法表示物件、陣列、字串、數字、布林值和 null。幾乎所有程式語言都把它當作網頁 API、設定檔和應用程式間資料交換的預設格式。它沒有內建註解、日期或結構描述,大型巢狀檔案不用檢視器很難閱讀。
- 壓縮方式
- –
- 透明度
- –
- 動畫
- –
- 推出年份
- 2001 · Douglas Crockford
BASE64
Base64 編碼文字
Base64 是 RFC 4648 定義的編碼方式,可將任何二進位資料轉為由 64 個安全文字字元組成的字串。常用於以資料 URI 將圖片嵌入 HTML 與 CSS、在電子郵件中附加檔案,以及在 JSON 或 XML 中傳送二進位資料。編碼可完全還原,但會讓資料增大約 33%。Base64 不是加密,沒有任何安全性,任何人都能解碼。
- 壓縮方式
- 無損
- 透明度
- –
- 動畫
- –
- 推出年份
- –
當結構化資料必須放進無法接受原始引號與換行的單一字串欄位時,就會把 JSON 編碼成 Base64,例如 CI 機密、Kubernetes manifest、API 的 content 欄位或標頭值。
JSON 轉 Base64 常見問題
Base64 編碼的 JSON 有加密嗎?
不是。Base64 只是一種編碼,任何人用一行指令就能解碼。Kubernetes 文件本身也提醒,Secret 預設只是以 Base64 編碼並未加密儲存,所以編碼後的字串要和原始金鑰一樣妥善保護。
權杖或網址該用 Base64 還是 base64url?
這裡輸出的是標準 Base64,使用 + 和 /,並以 = 補位。JWT 和網址參數使用 RFC 4648 的 base64url 字元集,改用 - 和 _,通常也會省略補位字元。如果目標系統要求 base64url,請替換這三個字元。
編碼前要先壓縮(minify)JSON 嗎?
通常會。空格、縮排和換行都和其他內容一樣是位元組,每 3 個位元組會變成 4 個輸出字元。先把排版過的設定檔壓成單行(例如用 jq -c),編碼後的字串就會相應變短。
如何把字串解碼回 JSON?
在 macOS 或 Linux 執行 base64 --decode;在 PowerShell 使用 [Convert]::FromBase64String;在瀏覽器中,則把 atob 的結果交給 TextDecoder,UTF-8 字元才能正確還原。
為什麼 kubectl 顯示 illegal base64 data?
Secret manifest 中 data 底下的值必須是單行的有效 Base64。出現這個錯誤,通常是貼上時混入了換行,或是把純 JSON 直接放在 data 底下。純文字值應該放在 stringData,Kubernetes 會幫你編碼。
編碼會改動 JSON 的內容嗎?
不會。Base64 能在位元組與文字之間無損對應,因此鍵、值、帶重音符號的字元,甚至檔案開頭的位元組順序標記,解碼後都會完整還原。
- 圖片轉 Base64 轉換器將 PNG、JPG、GIF、WebP 或 SVG 圖片編碼為 Base64 文字,附 data:image 前綴,可直接用於 HTML src、CSS url() 或 JSON。一次最多 20 張。
- JSON 轉 TXT 轉換器將 JSON 轉成純文字檔:每筆記錄一行,欄位以 Tab 或您指定的分隔符號分開。可用記事本、Excel 與命令列工具開啟。
- JSON 轉 YAML 轉換器線上將 JSON 轉成 YAML,適用 Kubernetes、GitHub Actions、Compose 與 Ansible 設定檔。縮排正確、引號安全,每批 20 個檔案,免註冊。
- JSON 轉 XML 轉換器線上將 JSON 轉成 XML:鍵變成元素,陣列變成重複元素,全部包在您命名的根標籤內。輸出自動排版縮排,免註冊。
- JSON 轉 CSV將 JSON 或 JSON Lines 轉成 CSV:每個物件一列,巢狀欄位展開成欄,UTF-8 含 BOM,Excel 正確顯示重音字元。一次可轉 20 個檔案。