Table of Contents |
---|
...
However, one can use UTF-8 in any text field. In order to keep FIX-protocol compatibility the counterparty must also expect UTF-8 encoding in the fields.
Info |
---|
In case if UTF-16 or Unicode is UTF-32 areused, the described approach leads to protocol violation because the 0x01 symbol in these encodings would be used inappropriately. |
...
For FIX Antenna, it is user responsibility to convert ASCII the Unicode string with UTF-8 content to the UTF-8 string and vice-versa.
The list of encoded tags
...
Dictionary configuration example:
Code Block | ||||
---|---|---|---|---|
| ||||
<fielddic> <!-- ... --> <fielddef tag="50354" name="EncodedUserFieldLen" type="int"/> <fielddef tag="50355" name="EncodedUserField" type="String"/> <!-- ... --> </fielddic> <msgdic> <!-- ... --> <msgdef msgtype="B" name="NEWS"> <!-- ... --> <field tag="50354" name="EncodedUserFieldLen" condreq="existtags(T$50355)"/> <field tag="50355" name="EncodedUserField" condreq="existtags(T$50354)"/> </msgdef> <!-- ... --> </msgdic> |
Message example: encoding-testing-custom.txt
FIX Protocol and UTF-16/UTF-32 Encoding
In UTF-16 or Unicode UTF-32 encodings, 0x01 is a page code and can be contained in the field content it makes UTF-16 incompatible with FIX-Protocol.
There is no need to use UTF-16 or UTF-32 while it can be replaced with UTF-8