假檔案產生器
創造一個精確尺寸、零填滿、安全隨機或重複文字的檔案,用於本機上傳、儲存與傳輸測試。
隱私權:你的檔案不會離開裝置,所有處理均在瀏覽器本機完成。
使用方式
- 1.請輸入安全的檔名,以及從 1 到 52,428,800 的精確整數位元組大小。
- 2.選擇零位元組、安全隨機位元組,或重複 UTF-8 文字,並在需要時提供文字模式。
- 3.產生 Blob、確認精確的位元組總計與內容政策,然後下載本機的虛構檔。
關於假檔案產生器
假檔案產生器會產生一個本機檔案,具有精確的位元組大小與可預測的內容規則。請輸入安全的檔名,指定整數位元組數,選擇零位元組、安全隨機位元組,或重複 UTF-8 文字,產生 Blob,確認顯示的位元組數,並下載。此過程與下載皆發生於當前瀏覽器標籤頁中。不會有任何產生的位元組、檔名或文字模式上傳至 Lizely 或傳送至其他服務。
測試文件對於測試上傳限制、附加文件驗證、儲存額度、進度顯示、下載處理、傳輸時間、文件庫行為、校驗碼流程以及應用程式錯誤訊息都非常有用。它讓開發者能在不尋找恰好符合所需大小的真實文件的情況下,重現特定的文件大小條件。此工具僅用來產生測試資料。它不會因為選擇的檔名使用了某種副檔名,就模擬有效的圖片、PDF、壓縮檔、可執行檔、媒體串流或應用程式專用文件格式。
所要求的大小以精確的十進位位元組表示。必須僅包含數字,不得包含符號、小數點、指數、逗號、單位字尾或空白字元。最小檔案為 1 位元組。最大檔案為恰好 52,428,800 位元組,等於 50 MiB。此精確邊界被接受,下一位元組將被拒絕。產生的各部分會先求和,再與請求值對照,瀏覽器 Blob 大小也會再次驗證。輸入欄位不會隱藏 HTML 長度限制:超出預算的值仍會顯示,以便產生過程能報告相應錯誤。不會自動四捨五入為千位元組、縮短、擴充、抽樣或上限限制。
零模式僅產生 0x00 的位元組值。實作會分配有限區塊,而非依賴文字 null 字元或稀疏檔功能。下載的 Blob 是一個正常檔案,其邏輯位元組數量即為請求的大小。檔案系統、瀏覽器、傳輸工具或歸檔工具可能有效儲存或壓縮長段連續的零值,因此實際硬碟使用量或壓縮傳輸大小可能與邏輯 Blob 大小不同。總結報告的是邏輯位元組,而非檔案系統的區塊分配。
隨機模式使用瀏覽器 Web Crypto getRandomValues API,透過可注入的填滿函式提供給產生器。呼叫會分為最多 65,536 位元組的區塊,遵守瀏覽器 API 的限制,避免單次過大隨機請求。每個區塊填滿後才會加入 Blob。隨機模式適合用於不可壓縮的測試資料與校驗和測試,但此工具不會保留種子,無法重複生成相同的隨機檔案。此工具並非密碼生成器、加密系統、安全清除工具、金鑰匯出函式,或能證明下載的位元組在分享後仍保持機密性的證明。
文字模式會將輸入的模式以 UTF-8 編碼,並重複其位元組直到達到請求的大小。首先使用完整的模式重複。若剩餘空間僅能容納字首,則會包含最長的字首,且必須以完整的 Unicode 編碼結束。任何無法容納下一個完整字元的剩餘一至三個位元組,將以 ASCII 空白填補。此政策保留有效的 UTF-8,同時確保產生精確的請求位元組數。例如,一個僅需一筆位元組的請求,若僅含表情符號,將變成一個空白,而非無效的表情符號片段。可見的總結會顯示重複的 UTF-8 文字,幫助文字說明會解釋最終補位的邏輯。
文字模式必須非空,長度不得超過 10,000 UTF-16 字元,且不得包含未配對的 Unicode 代理項。支援 emoji 與補充字元。UTF-8 位元組長度不等於 JavaScript 字串長度,因為 ASCII、帶重音字母、CJK 字元以及 emoji 會使用不同的位元組數。測試會以致命 UTF-8 驗證解碼產生的檔案,以確認邊界填充不會導致最終序列錯誤。文字模式不會加入位元序標記、自動換行、MIME header 或隱藏元資料。
檔名會進行驗證,而非靜默清理。空檔名、首尾空白、點路徑、正斜線或反斜線、類似斜線的符號、C0 與 C1 控制字元、零寬或雙向格式控制字元、Unicode 換行符、以及常見檔案系統保留的標點符號皆被拒絕。以點結尾的檔名與 Windows 裝置名稱(如 CON、NUL、COM1 與 LPT1)也同樣被拒絕。接受的檔名會原樣使用作為下載屬性。這可避免看起來只是簡單檔名的請求變成路徑或誤導性的方向控制標籤。此規則並不能保證所有作業系統都能接受所有剩餘的 Unicode 檔名。
產生動作會延遲至瀏覽器任務中執行,以便在位元組構建開始前顯示忙碌狀態。編輯檔名、大小、模式或文字會增加一個作業產生,取消待處理工作,清除舊的成功與錯誤狀態,並收回先前的 ObjectURL。重新開始產生會執行相同的清理動作。若舊任務達到 URL 建立,會立即收回該新 URL 而不會發布。元件解除安裝會取消計時器並收回當前 URL。錯誤情況下,不會讓先前成功的下載繼續顯示。
產生器直接建立 Blob 元件,並未使用 畫布 或 toBlob。ObjectURL 建立、精確 Blob 大小驗證、作業擁有權、取代與解除安裝皆被追蹤。下載連結僅指向目前的 Blob。瀏覽器下載行為可能在同名檔案已存在或平臺政策拒絕該名稱時重新命名檔案;此外部行為並未改變產生的位元組。關閉或編輯頁面會撤銷記憶體中的下載 URL,如需重新產生檔案請重新產生。
一個虛擬檔案即使 50 MiB 容量上限保守,仍可能佔用記憶體與硬碟空間。請避免在多個分頁中產生大量大型檔案。隨機位元組通常很難壓縮,而零與重複文字則可以大幅壓縮。請勿使用產生的檔案來繞過服務上限、耗盡他人的儲存空間或未經授權測試系統。對於結構化開發者資料,請使用 JSON 格式化工具、JSON 縮小工具、UUID 產生器或 ASCII 表格,視情況選擇合適的工具。本工具刻意產生原始測試位元組,而非語義有效的內容。
方法與來源
保持超預算的輸入可見,以便驗證能明確拒絕,而非僅依賴 HTML 字元長度限制。拒絕不安全的檔名,包括路徑分隔符及其相似字元、C0/C1 控制字元、不可見格式字元、非十進位或非整數大小、超出 1 至 52,428,800 位元組範圍的大小,以及不符合規則的字串模式。零模式會產生有界且零值的 Uint8Array 區段;隨機模式需注入 Web Crypto 填補器,僅在區段長度不超過 65,536 位元組時呼叫;文字模式則以 TextEncoder 對模式進行編碼,完整重複 UTF-8 位元組,使用能完整涵蓋的最長完整碼點字首,僅對不完整的最終字元補足 ASCII 個空白字元。將各區段長度相加,構造一個本機 Blob,要求 Blob.size 精確等於請求值,並釋出一個屬於產生過程的 ObjectURL。編輯、取代、過期完成、錯誤或元件解除安裝時會收回 URL 並清除舊結果。
常見問題
- Lizely 會上傳或儲存虛擬檔案嗎?
- 不會。字元產生、Blob 建構、ObjectURL 建立以及下載全部都在當前瀏覽器標籤頁中完成。
- 產生的檔會正好等於我輸入的大小嗎?
- 會。產生器接受整數位元組,驗證各段總和,檢查最終 Blob 大小,並拒絕任何超過 50 MiB 的值,不會進行四捨五入或截斷。
- 重複文字為何會在不順的 UTF-8 邊界結束?
- 它僅保留完整的 Unicode 字元,並用 ASCII 空白填補剩餘的位元組。這保留了有效的 UTF-8,同時符合精確要求的位元組數。
- 檔名為 .png 或 .pdf 會產生有效的圖片或 PDF 嗎?
- 不會。副檔名僅作為下載檔名的一部分。內容仍為零、隨機位元組或重複的 UTF-8 文字,不會獲得真實的格式結構。
相關工具
- JSON 格式化工具在瀏覽器中格式化、壓縮並驗證 JSON —— 可以美化顯示或壓縮為單行,並精確標示錯誤位置。
- JSON 縮減工具將嚴格的 JSON 轉為緊湊的 JSON.parse 與 JSON.stringify 結果,並明確拒絕重複鍵值與不安全的數值重寫。
- UUID 產生器在瀏覽器中批次產生符合 RFC 標準的 4122 v4 UUID,可複製單個或全部內容。
- ASCII 表格查詢所有標準 7 位 ASCII 編碼的精確十進位、十六進位、八進位與二進位值。
- ANSI 色彩碼產生器建立並複製原始 SGR 逸出序列,並搜尋標準 8 色加亮 8 色的終端機色碼。
- 標籤生成器建立 Shields.io 標籤 URL、Markdown 片段與 HTML 圖片標籤,無需記憶路徑轉義或查詢引數。
開發者工具 使用指南
查看全部- How to Create an Empty File in Any Browser with Exact Size (英文原文)
- How to Create a Dummy File in Unix: Exact Bytes (英文原文)
- Create a Dummy File in CMD with Exact Size and Content (英文原文)
- Convert .properties Files to JSON Online (英文原文)
- Random MAC Address On or Off: A Developer Guide (英文原文)
- Generate a JWT for Testing: HS256 Tokens in Your Browser (英文原文)
- How to Decode JWT Tokens in Angular Apps (英文原文)
- JSON Schema to Zod: Inference Limits and a Safer Path (英文原文)
- Rust: Convert a Struct to a JSON String With serde (英文原文)
- How to Convert JSON to Excel in Python (英文原文)
- JSON to CSV Alternative With Built-In Formula Protection (英文原文)
- Format a JSON File in VS Code and in Your Browser (英文原文)
- Local JavaScript Playground Alternative for Safe Testing (英文原文)
- How to Convert IPv4 to a 32-Bit Integer for Storage (英文原文)
- Convert Decimal Numbers to IEEE 754 Floating Point Format (英文原文)
- HTTP Status Codes Alternative: A Registry-First Lookup (英文原文)
- How to Edit HTML in a Browser Using a Sandboxed Preview (英文原文)
- Format HTML Code from Notepad++ Without Plugins (英文原文)
- Why Is Hello World Used in Programming: A Practical Guide (英文原文)
- How to Make Flexbox Items Fill the Container Height (英文原文)