Split a large text file

Break a large text, CSV, TSV, JSONL, Markdown or log file into smaller line-based parts and download them together as ZIP.

What this tool actually does

Split text file parses the content as structured data or text before generating the output. JSON, XML, CSV, TSV, Markdown and damaged text are not treated as arbitrary strings where changing a filename would be enough.

How the result is verified

Whenever the format allows it, the generated result is parsed or validated again. Quoted fields, delimiters, XML/JSON structure and text encoding are handled with format-specific checks to reduce outputs that look plausible but cannot be read correctly by the next application.

Limits and fidelity

Limits protect the browser from disproportionate files, rows, columns or cell sizes. The conversion preserves information the destination can represent but does not invent types, relationships or meaning missing from the source. Review critical datasets before replacing the original.

When to use this workflow

Use this workflow when a system requires another representation of the same data, when syntax needs validation or when text displays broken characters. For legal, financial or production-critical information, keep the original and compare a representative sample before relying on the transformed file.

Privacy and final verification

Keep the original file until the output has been reviewed in the destination application or portal. Supported workflows process locally in the browser and enforce bounded size and complexity limits. For Split text file, verify that the generated format preserves the properties that matter for your use case. For important data, compare a representative sample and confirm that format, content and quality meet the actual requirement before replacing the source file. Also open the generated file in the destination application when compatibility, colour, transparency, layout or compression matters.

Split CSV records without cutting quoted line breaks

Choose a UTF-8 TXT, CSV, TSV, JSONL, Markdown or log file and set 100–1,000,000 lines or records per part. For CSV and TSV, a quoted field can contain a line break: the splitter counts that as one logical record, rather than cutting it across ZIP entries. The header is not duplicated in later parts. Each part is a byte slice, not a separately normalised spreadsheet.

Reconstruct the original bytes

The ZIP contains numbered parts in order. Extract and concatenate their bytes in filename order to reconstruct the original file, including its BOM, Unicode, whitespace and CRLF/CR/LF endings. The tool reopens the ZIP, checks its entries and compares the concatenation with the source before offering the download. Do not open and resave the parts in a spreadsheet if exact byte fidelity matters.

CSV separator safety

For CSV, the first logical record must identify a single comma, semicolon or pipe separator; mixed separator styles are rejected rather than guessed. An invalid quote is rejected, and scanning stops as soon as more than 100 parts would be required.

Limits, cancellation and unsupported encodings

The browser accepts at most 20 MiB per file and 100 ZIP parts. UTF-8 is mandatory; NUL bytes, malformed quoting and invalid UTF-8 are rejected. Cancelling interrupts cooperative scanning, but an already running synchronous ZIP-writing step may need to finish before the browser responds. No partial ZIP is published after cancellation.

Related workflows

Use join text files for plain-text concatenation; it does not reconcile CSV column headers. If characters appear corrupted, first use repair text encoding. For a tabular format change, use CSV to TSV instead of splitting.