- PR -

メールの添付ファイルの名前を変える方法はありますか?

1
投稿者投稿内容
マシュー
常連さん
会議室デビュー日: 2002/11/29
投稿数: 39
投稿日時: 2006-02-02 10:05
ファイルを下記の様に添付ファイルとしてアタッチしてメールを送信する機能があります。
概ね順調なのですが、受信側のメーラー(Webメール系)によっては、添付ファイルが文字化けを起こしたりして開く事ができない事があると報告がありました。

ファイル名(下記のFileNM)が、半角英数だけであれば全く問題がないと思うのですが
現在は登録者がアップロードしたファイル名の頭に機械的な管理番号(半角英数)を付加したものとしているので
半角・全角の入り混じったファイル名となっており、これが原因と判明しております。

送信時にファイル名を半角英数の簡単なものに変更できれば解決できると思うのですが
方法はあるでしょうか?


//添付ファイル
object objAttachment = new MailAttachment(FileNM, MailEncoding.Base64);
message.Attachments.Add(objAttachment);
渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2006-02-02 11:51
引用:

送信時にファイル名を半角英数の簡単なものに変更できれば解決できると思うのですが
方法はあるでしょうか?



.NET 2.0 以上が対象になりますが、System.Web.Mail ではなく System.Mail.Net を使用すれば、その辺がきめ細かく制御できるようです。
なおこ(・∀・)
大ベテラン
会議室デビュー日: 2004/04/08
投稿数: 174
お住まい・勤務地: 東京都
投稿日時: 2006-02-02 13:32
お世話になります。

添付するファイル名自体を変えてしまう事はだめなんでしょうか。
たとえば、アップローダなどで、ファイルをアップする時に、
アップローダ側で、半角英数字以外はエラーとするとか。
マシュー
常連さん
会議室デビュー日: 2002/11/29
投稿数: 39
投稿日時: 2006-02-02 14:02
お世話になります。

.NET 2.0 以上だと対応できるんですか。
改良された点も多々あるようなので、今後バージョンアップも検討してみたいとも思うのですが・・

使用者に負担をかけさせたくないのですが
アップデータ時にエラーとするしかないですかね。
Shane
大ベテラン
会議室デビュー日: 2003/06/06
投稿数: 132
お住まい・勤務地: Vancouver, BC
投稿日時: 2006-02-05 17:12
メール送信時に rename もしくは copy して半角ファイル名にしてそれを添付するのは駄目なのでしょうか?
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-05 17:40
許されるならば、圧縮しておいて圧縮ファイル名を変更するかな。
受信側で解凍すれば通常どおりのファイル名が復元されます。
これなら、一貫したファイル名でも許されますよね。(復元されるから)

それが許されないのならば、勝手にファイル名を決めてしまうか、
ユーザーに入力を促すかで対応が変わるんでしょうけど。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
1

スキルアップ/キャリアアップ(JOB@IT)