The code-set-conversion file describes how to map each character in a particular source code set to the characters of a particular target code set. IBM Informix products can perform a given code-set conversion if code-set-conversion files exist to describe the mapping between the two code sets.
When an IBM Informix product needs to obtain code-set-conversion information, it accesses one of the GLS code-set-conversion files in the following table.
Platform | Code-Set-Conversion File |
---|---|
UNIX | $INFORMIXDIR/gls/cvY/code1code2.cvo |
Windows | %INFORMIXDIR%\gls\cvY\code1code2.cvo |
In these paths, INFORMIXDIR is the environment variable that specifies the directory in which you install the IBM Informix product, gls is the subdirectory that contains the GLS files, and Y represents the version number for the code-set-conversion object-file format.
This rest of this section describes the remaining elements in the pathname of GLS code-set-conversion files.
Each code-set-conversion file has the following two forms:
This file has a .cv extension and serves as documentation for the corresponding object file.
IBM Informix products use the object file to obtain code-set-conversion information quickly. Object code-set-conversion files have a .cvo file extension.
The header of the code-set-conversion source file (.cv) lists the two code sets that it converts and the direction of the conversion.
To conform to DOS 8.3 naming conventions, GLS code-set-conversion files use a condensed form of the code-set names, code1code2, in their filenames. The 8-character name of each code-set-conversion file is derived from the hexadecimal representation of the code-set numbers of the source code set (code1) and the target code set (code2).
For example, the ISO8859-1 code set has an IBM CCSID number of 819 in decimal and 0333 in hexadecimal. The IBM CCSID 437 code set, a common IBM UNIX code set, has a hexadecimal value of 01b5. Therefore, the 033301b5.cv code-set-conversion file describes the conversion from the CCSID 819 code set to the CCSID 437 code set.
IBM Informix products use the Code-Set Name-Mapping file to translate between code-set names and the more compact code-set numbers. You can use the registry file to find the hexadecimal values that correspond to code-set names or code-set numbers.
Most code-set conversion requires two code-set-conversion files. One file supports conversion of characters in code set A to their counterparts in code set B. Another supports the conversion in the return direction (from B to A). Such conversions are called two-way code-set conversions. For example, the code-set conversion between the CCSID 437 code set (hexadecimal 01b5 code number) and the CCSID 819 code set (or ISO8859-1 with a hexademical 0333 code number) requires the following two code-set-conversion files:
To be able to convert between these two code sets, an IBM Informix product must be able to locate both these code-set-conversion object files. Performing the conversion on only one direction would result in mismatched characters. For more information on mismatched characters, see Performing Code-Set Conversion.
The following table shows some of the code-set conversions that IBM Informix products can support, along with their associated code-set-conversion source filenames.
Source Code Set | Target Code Set | Code-Set-Conversion Source File |
---|---|---|
ISO8859-1 | Windows Code Page 1252 | 033304e4.cvo |
Windows Code Page 1252 | ISO8859-1 | 04e40333.cvo |
ISO8859-1 | IBM CCSID 850 | 03330352.cvo |
IBM CCSID 850 | ISO8859-1 | 03520333.cvo |
Windows Code Page 1252 | IBM CCSID 850 | 04e40352.cvo |
IBM CCSID 850 | Windows Code Page 1252 | 035204e4.cvo |