EBCDIC 形式の文字配列があり、その配列をファイルに保存したい場合。fputs
最初に別の形式に変換せずに文字配列を出力するために使用することを考えています。
質問)fputs
EBCDICの使用は合法ですか? そうでない場合、出力する前に文字列を ASCII に変換する必要がありますか?
私はオンラインで検索しましたが、fputs
EBCDIC データの出力に使用してはならないということは何も見つかりませんでした。
EBCDIC 形式の文字配列が、バイトで終わる c スタイルの文字列である\0
場合、問題はありません。
fputs()
は、バイナリ モードでは、\0
.
プログラムが ASCII 文字セットを使用して書かれていると仮定すると、出力ファイルがバイナリ モード (たとえば "wb") で開かれていることが重要です\n
。
一方で、このファイルに対して、書き込みと読み取り以外に何かする予定はありますか?
「EBCDIC形式の文字配列」がバイトで終わっていない\0
か、バイトが埋め込まれて\0
いる場合は、単純な使用をお勧めしますfwrite()
。システム全体が EBCDIC でない限り、バイナリ モードで使用するようにしてください。