Fixed-Width File to CSV Parser

Extract typed column ranges from fixed-width text and inspect unmapped content before exporting a delimited table.

Inputs stay on your device No sign-up Free to use
How this works

The tool runs in this browser. Your file or text is not uploaded to UseFreeTools. Check this tool's limits for anything it may save on your device.

Privacy details

Parse fixed-width text controls

Showing an example. Edit to see your own.

Up to 20 MB of UTF-8 text and 100,000 lines. Positions count Unicode code points, not bytes.

One column per line as name | start | width. Start positions are 1-based and columns must not overlap. Up to 500 columns.

Removes leading and trailing spaces inside each column, which is usual for padded fixed-width data. Turn it off to keep the padding.

A blank line never receives a value. Keeping it writes a row of empty cells so line numbers stay aligned; dropping it removes the row.

The CSV export uses this delimiter.

A cell whose first visible character is = + - or @ receives an apostrophe in the download. The prefix changes the stored value.

Processed in your browser. Your inputs stay on this device.

How to use Fixed-Width File to CSV Parser

  1. Paste the fixed-width records.
  2. Enter name | start | width for each column, using positions starting at 1.
  3. Choose trimming and blank-line handling.
  4. Inspect the extracted cells and unmapped-content report before downloading CSV.

Example: Fixed-Width File to CSV Parser

Extract identifiers, names and quantities.

You add
Rows: 001Ada 12 and 002Ben 07. Columns: id | 1 | 3; name | 4 | 5; qty | 9 | 2. Trim on.
You get
CSV rows contain 001,Ada,12 and 002,Ben,07. Leading zeroes remain in the identifier and quantity text.

Options

Column specification
Each row gives name | start | width. Start positions are 1-based character positions; width is the number of characters taken. Byte positions from a legacy file format are not interchangeable.
Trim and blank lines
Trimming removes surrounding whitespace inside extracted cells. The blank-line choice keeps or drops empty records. Review reported text outside the specified columns.

Supported inputs and limits

Up to 20 MiB text, 100,000 lines and 500 non-overlapping columns. Positions count Unicode code points, not UTF-8 bytes or visual display cells. Short nonblank lines are refused rather than padded silently. Content outside your ranges is reported so you can check whether a column was missed. Formula protection applies to CSV exports by default.

Where your input is processed

This tool processes your input in this browser. Your text and files are not uploaded to UseFreeTools. Check this tool's limits for anything it may save on your device.

A fixed-width layout needs the source specification

A visible gap does not prove a field boundary. Use the actual start and width for each field, especially when values contain spaces. Overlapping or invalid specifications are refused. The output keeps values as text, so identifiers with leading zeroes remain identifiers.

Character positions can differ from byte positions

The tool slices decoded text by the supported character convention. A multibyte encoded source described by byte offsets can have different boundaries. Decode the file deliberately and test a record containing non-ASCII characters before relying on a legacy byte-based layout.

Questions about Fixed-Width File to CSV Parser

Do column positions refer to bytes?

No. They refer to Unicode code points. A multibyte character still occupies one code-point position, while a combining sequence can occupy several.

What happens when a record is too short?

A nonblank record that cannot cover the selected ranges is refused with its line number. Check the specification or source record.

Can I leave gaps between columns?

Yes, provided ranges do not overlap. Unmapped content is reported for review instead of being presented as extracted data.

Project manager: Tony Hines · Content updated 4 October 2026 · Report a problem