BYTEORDERMARK句を使用して、データ・ファイルにバイト順序マーク(BOM)があるかを確認するかどうかを指定します。この句は、キャラクタ・セットがUnicodeの場合にのみ有効です。
BYTEORDERMARK NOCHECKを指定すると、データ・ファイルにBOMが存在するかどうかが確認されず、データ・ファイルのすべてのデータがデータとして読み込まれます。
BYTEORDERMARK CHECKを指定すると、データ・ファイルにBOMがあるかどうかを確認します。これはUnicodeキャラクタ・セットのデータ・ファイルについてのデフォルト動作です。
次に、使用例をいくつか示します。
データをリトル・エンディアンまたはビッグ・エンディアンとして指定し、CHECKを指定したときにそのエンディアンがデータ・ファイルと一致していないと判断された場合は、エラーが返されます。たとえば、次のパラメータを指定したとします。
DATA IS LITTLE ENDIAN BYTEORDERMARK CHECK
Unicodeデータ・ファイル内にBOMが存在するかどうかが確認され、そのデータが実際にはビッグ・エンディアンであった場合は、リトル・エンディアンを指定していたため、エラーが返されます。
BOMが存在せず、DATA IS...ENDIANパラメータを使用してエンディアンを指定しない場合は、プラットフォームのエンディアンが使用されます。
BYTEORDERMARK NOCHECKを指定し、DATA IS...ENDIANパラメータを使用してエンディアンを指定した場合は、その値が使用されます。それ以外の場合は、プラットフォームのエンディアンが使用されます。
関連項目: