• 締切済み

添付ファイルが開けないのは?

Perlでメールの受信プログラムを作成しています。 通常の受信文は問題ないのですいが、漢字(ファイル名)の添付ファイルが 来た場合、開けません。(半角アルファベットのファイルは開ける) メールで来た、添付ファイルのファイル名をEUCに変換してディスク上 に保存しているのですが、Object Not Foundとなってしまいます。 メッセージと半角のファイル名なら大丈夫なことから、漢字のファイル名の変換コードが 正しくないと思うのですが、何で登録したらよいのでしょうか? お助けいただけるようにお願いします。

みんなの回答

  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.2

サーバーのOSが書いてありませんが、 OSがunix系列なら、ファイル名に多バイト文字列は使えなかったと思うので、 URLencodeのまま保存すべきでしょう。 日本語対応windowsなら、ファイル名に使えるのはSJISだと思ったけど。

papope
質問者

お礼

できないことがわかりました。 ご意見を参考にさせていただき、別の対応をとりました。 ありがとうございます。

papope
質問者

補足

ご回答ありがとうございます。 サーバはLINUXを使用しています。 試してみましたけどSJISでも駄目なんですね・・・ 添付ファイル名が変わってしまいますね・・・・ どうしたら良いんだろう・・・ 何か良いアイデアみたいなのないでしょうか?

すると、全ての回答が全文表示されます。
  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

a)添付ファイルが保存できてる→そのファイル名を正しく得られるように修正。 b)添付ファイルが出来てない→MIMEマルチパートの解析に失敗してそうなので、そこらへんを修正。 ――な感じでデバッグしてみては。

papope
質問者

補足

御回答ありがとうございます。 色々と試行していますが添付ファイルの文字コードに問題があるようです。 HP自体がEUCで創っているんですが、これがまた問題の種のようです。 もう少し色色と試してみます

すると、全ての回答が全文表示されます。

関連するQ&A