
メール送信のシステムをPerlで作っています。
文字コードUTF-8で送信しようと思っていますが、UTF-8の場合の問題点を教えてください。
自分で調べた限りでは、昔は対応していないメーラーだと文字化けしていたが、今は対応していないメーラーはないので、大丈夫、という認識です。
しかしながら、大手のAmazonやYahoo!、プロバイダや銀行などから飛んでくるメールは、ほとんど全てがISO-2022-JPで飛んできます。
自分が知っている限り、UTF-8を使用しているところはありません。
なので、UTF-8でメール送信することに不安を感じています。
AmazonやYahoo!は、UTF-8だと何か問題があったので、あえてISO-2022-JPを使っているのでしょうか?
ISO-2022-JPだと 髙 などが文字化けするはずなのですが、髙→高に変換してメール送信しているのでしょうか?
よろしくお願いします。
No.4ベストアンサー
- 回答日時:
> 821 は obsolete だから参照しちゃダメですよぉ>#2. 今なら少なくとも 2821 の方を参照しないと....
2821 は obsolete だから 5321 を参照しないと。
ただし、UTF8 を使うかどうかの判断に RFC5321 や RFC5322 はあまり関係ない。
(8bit対応してないSMTPサーバーがいるかもしれないから7bitにencodeしてねとかそれくらい)
受け取る人が限られていてその人たちがUTF8で問題ないならUTF8で送れば良いと思います。
Amazon や Yahoo! は受け取る対象が不特定多数なので ISO-2022-JP が無難なわけですね。
この回答への補足
回答ありがとうございます。
相手は不特定多数です。
No.2さんへの補足でも書きましたが、ISO-2022-JPだと髙や﨑が文字化けすると思います。
文字化けすることについて、http://oshiete.goo.ne.jp/qa/6471012.html でアドバイスいただき、UTF-8にしようと思いました。
しかし、UTF-8だと危険なようですね。
ISO-2022-JPでも髙や﨑が文字化けしない方法あるのでしたらいいのですが。。。
No.3
- 回答日時:
821 は obsolete だから参照しちゃダメですよぉ>#2. 今なら少なくとも 2821 の方を参照しないと....
2821 には「SMTP サーバは 8BITMIME をサポートしなきゃだめ」って書いてあるけど, 逆に「8BITMIME を無制限に許しているわけではない」という感じに読める (英語だと
8BITMIME SHOULD be supported by SMTP servers.
However, it MUST not be construed as authorization to transmit
unrestricted eight bit material.
と書いてある) ので, 「途中」を考えると 8ビットで送るのはちょっとリスキーかもしれない.
No.2
- 回答日時:
逆に聞きますが
なぜUTF-8でメールをしようと思うのですか?
なぜISO-2022-JPではダメなんですか?
で・・ISO-2022-JPですけど,
この符号化は「7ビット」でOKだから使われてるんですよ.
8ビット目があるとわけのわからんことしてくれる
(8ビット目はクリアされてしまう)
サーバが昔は結構あったのです.
今でもそーいうサーバが生き残ってるかもしれないし,
#しらべてみたら・・・SMTPのRFC821では7ビットに規定してるようだ
メールシステムはいわば「バケツリレー」だから,
安全性を考えれば,ISO-2022-JPとなるのでしょう.
この回答への補足
回答ありがとうございます。
>逆に聞きますが
>なぜUTF-8でメールをしようと思うのですか?
>なぜISO-2022-JPではダメなんですか?
ISO-2022-JPでは髙や﨑が文字化けするからです。
先週、ここで質問したときに、UTF-8にするようアドバイスいただきました。
http://oshiete.goo.ne.jp/qa/6471012.html
ISO-2022-JPでも髙や﨑が文字化けしない方法あるのでしょうか?
No.1
- 回答日時:
日本国内のPC間でやり取りするならほぼ問題ないかと思います。
ただ、歴史的には7bitが保証されているので海外はどうかな?
後、困ってしまうのが携帯へのメールです。
http://jp.layer8.sh/reference/entry/show/id/198
auはUTF-8には対応していないのです。
というか、キャリアごとにバラバラですね。
> ISO-2022-JP だと 髙 などが文字化けするはずなのですが、髙→高に変換してメー
> ル送信しているのでしょうか?
これはしません。文字化けします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
INDIRECT 横に再度抽出したい
-
Strawberry Perl for Windows ...
-
perlのプログラミング 部分入れ...
-
Perlでファイルの末尾から指定...
-
perl の open について教えてく...
-
Perl言語について。
-
ファイルをディレクトリ分配の...
-
アルファベットに付いて質問し...
-
#!/usr/bin/perlで書きだしたCG...
-
Perlのエラーについてご教授く...
-
perlのflock関数でロックをかけ...
-
AI sisterとは、偽物の人ですか?
-
bashスクリプト
-
ファイルアイコンの左下に緑の□...
-
perlプログラミング 空白行削除
-
perlでリテラル値はメモリにど...
-
perlで2次元配列をサブルーチ...
-
Perlで時間の計算
-
perlについて
-
perlのrequireの動き方について...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでoutlook365が起動しません。
-
BASP21使用のメール送信でコマ...
-
VBScriptで、メールの送信をし...
-
プロキシ経由でjavamailを使っ...
-
Exchangeを使用したメール送信...
-
javamailでメール送信ができません
-
さくらインターネットでの添付...
-
Perl メール 文字化け
-
メールの送信について
-
CDO.Messageを使ったVBScript
-
sendmailでメール送信
-
Perl メールフォーム複数のアド...
-
VBAでsmtp認証をするには?
-
メールを送るスクリプトのテス...
-
【C言語】メールを送信するプロ...
-
Perl 初心者 メール確認画面に...
-
C#のメール送信でエラーが出る...
-
Perl初心者です。
-
Perl メール 勉強
-
Net::SMTPでメールを送信したい...
おすすめ情報