このページは福井県立大学の田中求之が2006年1月まで運用していた Mac のサーバ運用に関する会議室 「Web Scripter's Meeting」の記録です。情報が古くなっている可能性がありますのでご注意ください。

REALbasicで作ったCGIで書き出したファイルをBBEditで開くと文字化けします

発言者:kmbp
( Date Saturday, October 07, 2000 11:46:44 )


いつもお世話になります。

田中先生のREALbasicでCGIを作るページを参考にさせていただいて,小テストや
アンケートを受け取るCGIを何とか作ることができました。有り難うございます。

そのCGIは受け取った結果をテキストファイルで書きだすだけのものなのですが,
BBEdit 6.0 (Find Differencesを使いたい為)で開くと文字化けしてしまいます。

そこで「コマンド + A」してテキストファイル全てを選択し,フォントをOsakaな
どの2バイトフォントを選択すると次のようなエラーがでてしまいます。

The input text is malformed -if double-byte text, it may have been 
modified by a non-multi-byte-savvy tool(MacOS Error code -8739).

CGIでテキストファイルを書きだす前に,何か別の処理が必用なのでしょうか?

ちなみに SimpleText や JEdit では問題なく開いて見る事ができます。

宜しくお願いいたします。

田中求之 さんからのコメント
( Saturday, October 07, 2000 22:07:24 )

問題は CGI ではなくて、BBEdit の方にあるように思います。

>ちなみに SimpleText や JEdit では問題なく開いて見る事ができます。

ということですので、ファイル自体はちゃんとしたテキストファイルに
なっていると思います。

BBedit が Multi-byte に対応したのは今回が初めてですから、2バイト文字
がらみの処理には、まだまだ色々な問題が潜んでいる可能性があると思って
いたほうが良いと思います。

田中求之 さんからのコメント
( Saturday, October 07, 2000 22:09:53 )

なお、デフォルトのフォントを日本語のフォントにしておくと、普通は文字化け
しないと思いますが、そのへんの BBEdit の設定は大丈夫でしょうか?

私のところでは、BBedit 以外で作成したテキストファイルを開いても、今のところ
文字化けは起きず、ちゃんとデフォルトで指定したフォントで表示してくれています。

kmbp さんからのコメント
( Saturday, October 07, 2000 23:13:33 )

田中先生,レスありがとうございます。

先に結果から書かせていただきますと,文字化けは何とか解消できました。

教えて頂いた デフォルトのフォント は日本語にしてありましたが,

>ファイル自体はちゃんとしたテキストファイルになっていると思います。

..というコメントをいただいたので,先程まで色々と検証してみたところ
TextOutputStreamで書き出したファイルは確実にBBEdit6.0で開くと文字化けを起
こしてしまいます。

そこで受け取ったデータをTextOutputStreamで直接書き出さずに,一旦
EditFieldに溜めて EditFieldのSaveStyledEditFieldメソッドでスタイル付テキ
ストとして書き出すと難なく読むことができるようになりました。

これで次のステップに踏み出せそうです...ありがとうございました。