即時將檔案轉換為Base64編碼,將Base64字串轉換為檔案。支援圖片預覽、所有檔案類型和本地處理,確保最大隱私安全。
工具功能
- 檔案和Base64之間的雙向轉換: 支援將任何檔案編碼為 Base64 字串(檔案→Base64),以及將 Base64 字串解碼還原為原始檔案(Base64→檔案)。適用於圖片、文件、音訊、影片等所有類型的檔案。支援拖曳上傳和貼上 Base64 文字。
- 支援格式的圖片預覽: 對於圖片檔案(JPG、PNG、GIF、WebP、SVG等),自動產生預覽圖。編碼後即時顯示 Base64 資料 URI 格式的圖片預覽,解碼前顯示原始圖片效果。支援圖片縮放和全螢幕檢視。
- 自動檔案類型檢測: 智慧識別檔案的 MIME 類型(圖片/png、application/pdf、文字/plain 等),自動新增正確的 資料 URI 前綴(資料:圖片/png;base64,)。解碼時自動檢測檔案類型並提供正確的檔案副檔名建議。
- 支援所有檔案類型: 無檔案類型限制,支援圖片、文件、音訊、影片、壓縮檔等所有格式。所有處理在瀏覽器本地完成,不上傳任何檔案到伺服器。支援大檔案處理(建議<10MB 以獲得最佳效能)。
適用場景
- Web 開發 - 內聯圖片資源: 將小圖標、Logo、背景圖轉換為 Base64 嵌入到 HTML/CSS 中,減少 HTTP 請求數量,提升頁面載入速度。特別適合單頁應用(SPA)、離線應用和需要快速載入的小型圖片。使用資料 URI 格式可以直接在 CSS 的 background-image 或 HTML 的 img src 中使用。
- 郵件系統 - MIME 附件編碼: 在郵件客戶端和郵件服務中,使用 Base64 編碼處理郵件附件。符合 MIME 協定標準,確保二進制檔案(圖片、PDF、文件)能夠透過 SMTP 協定正確傳輸。支援各種郵件客戶端和郵件服務提供商的相容性要求。
- API 整合 - JSON 檔案傳輸: 透過 REST API 或 GraphQL API 傳輸檔案時,將檔案轉換為 Base64 字串嵌入到 JSON 回應中。避免需要單獨的檔案上傳介面,簡化 API 設計。適用於使用者頭像上傳、文件提交、圖片分享等場景。支援各種程式語言和框架的 API 整合。
- 資料庫儲存 - 文字欄位儲存二進制: 在只支援文字欄位的資料庫(如某些 NoSQL 資料庫)中儲存二進制檔案。將圖片、文件、音訊等檔案轉換為 Base64 字串儲存在文字欄位中。適合小型檔案儲存,避免需要單獨的檔案儲存服務。注意檔案大小限制和效能考量。
- 行動應用 - 離線資源嵌入: 在行動應用(React Native、Flutter、原生應用)中,將必要的資源檔案(圖標、字體、設定檔)轉換為 Base64 嵌入到應用程式碼中。實現真正的離線功能,減少應用啟動時的網路請求。特別適合需要快速啟動的應用場景。
- 安全傳輸 - 跨域檔案傳輸: 在需要跨域傳輸檔案的場景中,使用 Base64 編碼避免 CORS 問題。透過 JSONP 或普通 JSON 介面傳輸 Base64 字串,然後在客戶端解碼還原檔案。適用於 CDN 資源、跨域 API 呼叫等場景。
- 資料視覺化 - 圖表和報告: 在資料視覺化工具和報表系統中,將產生的圖表、報表圖片轉換為 Base64 嵌入到 HTML 報告中。確保報告可以獨立分發,不依賴外部資源。支援 PDF 匯出、郵件傳送、列印等場景。
- 前端框架 - 資源內聯: 在 Vue、React、Angular 等前端框架中,使用 Base64 編碼內聯小型資源檔案。配合 Webpack、Vite 等建置工具,實現資源的自動內聯和優化。減少 HTTP 請求,提升應用效能,特別適合 PWA 應用。
- 文件處理 - PDF 和 Office 文件: 在文件處理系統中,將 PDF、Word、Excel 等文件轉換為 Base64 進行傳輸和儲存。支援文件預覽、線上編輯、版本控制等場景。注意大檔案可能影響效能,建議僅用於小型文件或作為臨時傳輸方案。
- 遊戲開發 - 資源打包: 在 Web 遊戲和 HTML5 遊戲中,將遊戲資源(圖片、音訊、設定檔)轉換為 Base64 嵌入到遊戲程式碼中。實現單檔案遊戲分發,減少資源載入時間。適合小型遊戲、示範專案、原型開發等場景。
- 自動化腳本 - 檔案處理: 在自動化腳本和 CI/CD 流程中,使用 Base64 編碼處理設定檔、憑證、金鑰等敏感檔案。透過環境變數或設定檔傳遞 Base64 字串,然後在腳本中解碼使用。避免檔案路徑問題,簡化部署流程。
- 社群媒體 - 圖片分享: 在社群媒體 API 整合中,將使用者上傳的圖片轉換為 Base64 透過 API 傳輸。支援 Twitter、Facebook、Instagram 等平台的圖片上傳介面。簡化圖片上傳流程,避免需要先上傳到檔案伺服器再取得 URL。
使用方法
- 步驟1:上傳或輸入: 上傳檔案或輸入Base64字串
- 步驟2:選擇方向: 選擇轉換方向
- 步驟3:轉換和下載: 轉換並下載或複製結果
生成原理
Base64 編碼原理
Base64 是一種將二進制資料編碼為 ASCII 字符的編碼方式,使用 64 個可打印字符(A-Z、a-z、0-9、+、/)表示資料。編碼原理:將每 3 個字節(24 位元)的二進制資料分為 4 組,每組 6 位元(2^6=64),映射到 Base64 字符表。不足 3 字節時用 = 填充。編碼後資料體積增加約 33%,但可安全傳輸在文本協議中(如 Email、JSON、XML)。常用於圖片內嵌(資料 URI)、文件傳輸、加密資料存儲等場景。
文件處理與二進制轉換
Base64 文件轉換器支援多種文件類型的編碼和解碼:圖片(JPEG、PNG、GIF、SVG)、文檔(PDF、Word、Excel)、音視頻、壓縮包等。處理流程:文件上傳 → FileReader API 讀取為 ArrayBuffer → 轉換為 Base64 字串 → 輸出或嵌入代碼。反向解碼:Base64 字串 → atob() 解碼為二進制 → Blob 物件 → 下載或預覽。支援大檔案分塊處理、進度顯示、格式驗證、MIME 類型檢測等功能,確保轉換的準確性和效率。
Web 應用與 資料 URI
Base64 在 Web 開發中的典型應用是 資料 URI(資料 URI),格式為 資料:[MIME-類型];base64,[Base64-資料]。應用場景:小圖標嵌入 HTML/CSS(減少 HTTP 請求)、Canvas 圖像導出、圖片預覽(無需上傳服務器)、離線應用資料存儲、郵件附件編碼等。優點:減少網路請求、資料自包含、跨域友好;缺點:增加檔案大小、無法緩存、不適合大檔案。工具提供 資料 URI 生成、MIME 類型識別、編碼優化等功能。
常見問題
- 什麼是 Base64 編碼?
- Base64 是一種二進制到文字的編碼方案,使用 64 個可列印字元(A-Z、a-z、0-9、+、/)將二進制資料轉換為 ASCII 文字格式。它會使檔案大小增加約 33%,但允許二進制資料透過純文字通道安全傳輸。
- 如何將檔案轉換為 Base64?
- 只需上傳或拖放檔案到轉換器中。工具會自動將其編碼為 Base64 格式。然後您可以複製編碼字串或在應用程式中使用它。處理過程是即時的,完全在您的瀏覽器中進行。
- 可以將 Base64 轉換回檔案嗎?
- 可以!將 Base64 字串貼上到 Base64 轉檔案部分,工具會將其解碼回原始檔案。您可以在下載前預覽圖片,並下載任何檔案類型。工具會自動從 Base64 資料中檢測檔案類型。
- 使用這個 Base64 轉換器安全嗎?
- 絕對安全!所有處理都在您的瀏覽器中本地完成。您的檔案永遠不會離開您的電腦,也不會上傳到任何伺服器。這確保了您敏感檔案的完全隱私和安全。
- Base64 編碼有哪些常見用途?
- Base64 常用於在 HTML/CSS 中嵌入圖片(資料 URI)、透過 JSON API 傳送檔案、電子郵件附件(MIME)、在文字資料庫中儲存二進制資料,以及透過純文字協定傳輸檔案。它對 Web 開發和資料交換至關重要。
相關文件
- RFC 4648 - Base64 編碼 - Base64 編碼官方規範
- MDN - Base64 - Web 應用中的 Base64 編碼
- MDN - 檔案 API - 在 JavaScript 中處理檔案
- MDN - 資料 URIs - 在 資料 URI 中使用 Base64
- JavaScript - 二進制資料 - Web 應用中的二進制資料處理