- ベストアンサー
Linuxにてテキストファイル出力の文字コード
RedHatLinux7.3(2.96-110)、gccバージョン(2.96 20000731)にて、 C言語のアプリケーションを初めて作成しています。 そのアプリ内でテキストファイル(日本語あり)を 作成するのですが、どうも期待どおりの結果になりません。 というのも、出来上がったファイルの文字コードが、 EUCではなくShift-JISになってしまっています。 Linuxで作成したアプリをLinuxで実行するのですから、 出来上がるファイルの文字コードはEUCになるはずですよね? ちなみに、文字コードの確認は「kcc -c XXXXX.log」でおこないました。 もしかして「アプリケーションログを日本語出力する」 なんていうことが、そもそもの過ちなんでしょうか? ファイル出力には、fopen+fprintfを使っています。 どうしてこのような結果になってしまうのか、ご存知のかた、よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
補足
回答ありがとうございました。 emacsでは-S、catでは文字化けした状態でした。これはやっぱりShiftJISですね。 でも、今やっと、うまくいきました! 結論から言いますと、ソースファイルのいくつかが正常にEUC変換できていなかったみたいです。 すべてのソースファイルのEUC変換をやり直して実行してみましたら、ログファイルは正常にEUCで出力されているようです。 emacsで-E、catで正常に表示されていますので間違いないですよね? 本当にいろいろありがとうございました。