Software AG Products 10.7 | Integrating On-Premises and Cloud Applications | Processing Flat Files | Sending and Receiving Flat Files | Overview
 
Overview
The flat file parser measures the lengths and positions of all records and fields in flat file schemas in terms of bytes, not characters. Prior to Version 6.5, Service Pack 2, the parser measured all lengths and positions in characters.
Note:
This change does not affect users who currently parse flat files using single-byte encodings because one byte equals one character. Thus, there is no functional difference between parsing bytes and characters.
This parser supports both single-byte encodings (equivalent to character encodings) and multi-byte encodings. With multi-byte encodings, a byte count can differ from a character count since a single character can be encoded to multiple bytes. Both the pub.flatFile:convertToValues and the pub.flatFile:convertToString services support byte-count parsing for multi-byte encodings. In addition, pub.flatFile:convertToString includes an optional setting that returns a document as a byte array instead of a string. For more information about pub.flatFile:convertToString, see webMethods Integration Server Built-In Services Reference.
Important:
Multi-byte encoded files must run on JVM version 1.4 or later.
There is no change in the way in which the parser handles the following entities:
*Delimited fields and records.
A delimiter may be a single character, but may not be byte based. Delimiter and release character extractors still extract the specified character from the input file based on a character position.
*The field length validator.
The parser still uses the String.length() method to validate field lengths (in characters). However, the byte count validator validates the total number of bytes in a field.
Important:
The parser does not support the writing or reading of binary data (e.g., COMP-3 COBOL fields), nor does it support multiple kinds of encodings within one file.