Fixed-Width Positions File (TXT)
A classic fixed-width text extract with documented column positions, for COBOL-style / mainframe importer tests.
ID NAME AMOUNT
001 Ada Lovelace 001250
002 Ben Garcia 000320
003 Chen Wei 002900
Specifications
- Format
- fixed-width
- Columns
- ID(0-3), NAME(4-18), AMOUNT(19-24)
- Rows
- 3
Testing contract
Expected to pass- Scenario
- Exercise Fixed-Width Positions File (TXT) in its encodings workflow. A classic fixed-width text extract with documented column positions, for COBOL-style / mainframe importer tests.
- Expected result
- 4 text lines, decoded as UTF-8; first nonempty line is 'ID NAME AMOUNT'. Declared feature checks: columns=ID(0-3), NAME(4-18), AMOUNT(19-24).
What is a .txt file?
TXT is a plain-text file containing unformatted character data with no styling or structure beyond line breaks. Its interpretation depends on character encoding, most commonly UTF-8, and on line-ending convention. It is the most universal and portable text container.
How to use this file
Use an example TXT to test encoding detection, line-ending (LF versus CRLF) handling, and any tool that reads or streams raw text input.
How to use this file for testing
“Fixed-Width Positions File (TXT)” is a deterministic Testaroo fixture for CSV parsing, Data import, Encoding detection. Clean and deliberately messy CSVs, quoted commas, embedded newlines, ragged rows, odd delimiters, and encodings.
Documented properties for this file: 3 rows · fixed-width. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such, expect parsers to fail loudly rather than silently accept them.
Data fixtures document their exact quirks (delimiters, encodings, null handling, schema, and row counts) in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.
Feed the file to your parser and assert it handles the documented quirks, quoted delimiters, embedded newlines, ragged rows, or invalid syntax; the valid↔invalid distinction is labelled in the title.
Generated by generation/data_encodings_wave_c.py. Free for any use, no attribution required, license.
Related files
- csvCSV: UTF-8 with BOMA CSV prefixed with a UTF-8 BOM (EF BB BF) and accented / CJK cells, for testing BOM-aware importers.

- csvAlder Table Bistro: Inventory count sheet as transcribedInventory count sheet as transcribed for Alder Table Bistro. The same closing counts as inventory-count-sheet.csv, in the shape a paper count actually arrives in. CRLF line endings, a UTF-8 byte order mark, a semicolon delimiter and a decimal comma. Two blank lines, one section banner that is not a record, one ingredient split across two locations, one counted as whole packs plus a remainder, one superseded mid-shift row at 14:20, trailing whitespace in three fields, a leading-zero bin code, an empty bin code, and one record carrying ten fields where the header declares 9. Every quirk is named in README.md.

- csvAlder Table Bistro: Supplier price list CSV, semicolon and decimal commaSupplier price list CSV, semicolon and decimal comma for Alder Table Bistro. The same 48 price rows re-exported the way a European supplier portal writes them: UTF-8 with a byte-order mark (EF BB BF), semicolon field separators, CRLF line endings, and decimal commas in list_unit_price, price_per_case and contract_tier_unit_price. Column names, column order and every value are identical to price-list.csv; only the encoding and the separators differ.

- csvAlder Table Bistro: Till import in the European dialectTill import in the European dialect for Alder Table Bistro. The same 21 rows as pos-import.csv in the other dialect a till exports: semicolon delimited, decimal comma in the price column, Latin-1 encoded and CRLF terminated. It carries the non-ASCII characters "é", so reading it as UTF-8 raises a decode error instead of silently producing mojibake.

- csvCedar Street Tacos: Inventory count sheet as transcribedInventory count sheet as transcribed for Cedar Street Tacos. The same closing counts as inventory-count-sheet.csv, in the shape a paper count actually arrives in. CRLF line endings, a UTF-8 byte order mark, a semicolon delimiter and a decimal comma. Two blank lines, one section banner that is not a record, one ingredient split across two locations, one counted as whole packs plus a remainder, one superseded mid-shift row at 14:20, trailing whitespace in three fields, a leading-zero bin code, an empty bin code, and one record carrying ten fields where the header declares 9. Every quirk is named in README.md.

- csvCedar Street Tacos: Supplier price list CSV, semicolon and decimal commaSupplier price list CSV, semicolon and decimal comma for Cedar Street Tacos. The same 48 price rows re-exported the way a European supplier portal writes them: UTF-8 with a byte-order mark (EF BB BF), semicolon field separators, CRLF line endings, and decimal commas in list_unit_price, price_per_case and contract_tier_unit_price. Column names, column order and every value are identical to price-list.csv; only the encoding and the separators differ.
