Want to convert TXT (“|” pipe delimited text) file to XML file?
Try Withdata Data File Converter, a desktop TXT to XML converter for Windows, MacOS, and Linux, Convert TXT to XML, Easy and Fast.
- Can run in GUI mode, Step by Step, just a few mouse clicks.
- Can run in Command line, for Scheduled Tasks and Streams.
- Convert files locally and privately, avoid uploading large TXT file(s) to online services.
- Support Windows, Linux, and macOS.
Download Withdata DataFileConverter
Convert TXT (“|” pipe delimited text) to XML
Choose TXT file -> Set XML file -> Convert TXT to XML
“Start a New Convert” for “TXT to XML”.

Select From “File” “TXT” To “File” “XML”.

1. Open source TXT (“|” pipe delimited text) file.
Support large TXT file ( > 4GB ).

Source TXT file’s content is like this:

2. Config target XML file.

3. Set rows options.

4. Convert TXT to XML.

After converting, you can view the output XML file.

More about TXT to XML converter
See Video: Convert TXT (“|” pipe delimited text) file to XML file in a few clicks
See also:
- Merge multiple pipe delimited text files into one XML
- Batch convert pipe delimited text files to XML files
Pipe-delimited text → XML reference
What is a pipe-delimited file?
A pipe-delimited file (also called pipe-separated values, PSV) is a plain-text file where each line is one record and a vertical bar | separates the fields. It works like CSV but uses | instead of ,, so a value that contains commas needs no quoting.
Name|Age|City
Alice|30|New York
Bob|41|San Francisco
To open it in Excel: Data → From Text/CSV, then set the delimiter to | (or Text to Columns → Other = |).
Type mapping
| Value kind | in Pipe-delimited text | in XML |
|---|---|---|
| Int | 1234 | <int>1234</int> |
| Bigint | 9007199254740993 | <bigint>9007199254740993</bigint> |
| Decimal | 1234.56 | <decimal>1234.56</decimal> |
| Float | 1.234e+10 | <float>1.234e10</float> |
| Text | quoted only when it contains a pipe or a quote | <char>text</char> |
| Long text | must be quoted; line breaks inside force multi-line records | <text>multi-line text</text> (entities for & <) |
| Date | 2026-09-18 | <date>2026-09-18</date> (xs:date with an XSD) |
| Datetime | 2026-09-18 14:30:00 | <datetime>2026-09-18T14:30:00Z</datetime> (xs:dateTime) |
| Binary | not representable - base64 or hex string | <blob>base64...</blob> (xs:base64Binary) |
| Boolean | TRUE / FALSE, or 1 / 0 depending on the writer | <bool>true</bool> |
| JSON | the whole JSON value quoted, with internal quotes doubled | escaped inside an element, or its own sub-tree |
Dialect differences
Both Pipe-delimited text and XML are file formats, so what differs below is how each one chooses to represent a value.
| Property | in Pipe-delimited text | in XML |
|---|---|---|
| identifiers | Double quotes; a literal quote is doubled ("" ) | Attribute values in quotes; entities (& < >) for ... |
| dates | Conventional text: 2026-09-18 or 2026-09-18 14:30:00 | Text (xs:date / xs:dateTime when an XSD is in play) |
| binary | Not supported | base64Binary / hexBinary inside text |
| separator | Pipe "|" | Tags, not delimiters |
| encoding | No declaration - UTF-8 works only with a BOM | Declared in the XML declaration |
| typing | None - every field is text | None in the markup itself |
| shape | Flat table, optional header row | Arbitrary tree |
| ceiling | No formal limit; row count bounded by memory | Whole document is usually parsed into memory |
Data File Converter without the manual work
For batch jobs, large files and scheduling use the Data File Converter converter — an offline desktop app for Windows, Linux and macOS. Free trial.
