人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

mailtoのbodyを日本語で書きたいのですが、winとmacの両方で文字化けを起こさないようにするには、どのようにエンコードすればいいのでしょうか?
できないときは、どのように逃げるのがスマートでしょうか。

●質問者: nikita_r
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:BODY MAC WIN エンコード スマート
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● ceds
●35ポイント

http://www.shtml.jp/mojibake/mailto.html

http://allabout.co.jp/career/html/closeup/CU20030623A/index2...

どういう状況・原因下での文字化けを想定されているのかがわからない(当方の勉強不足かもしれません)ので恐縮ですが、以上のようなページを挙げておきます。

これで解決できないなら、フォームメールを使ってみるのはどうでしょうか? PHPやPerlの動作環境が必要になりますが、それさえクリアできれば、まず文字化けしないフォームメールが作れます。もちろん、クリックするだけで予め決められた本文のみ送信することも可能です。

http://www.google.com/search?client=safari&rls=ja-jp&q=PHP+フォームメール&ie=UTF-8&oe=UTF-8

http://www.google.com/search?client=safari&rls=ja-jp&q=Perl+フォームメール&ie=UTF-8&oe=UTF-8

◎質問者からの返答

HTMLはSJISで書いている状況ですが、起動するメールソフトによっても左右されそうな話ですね。

フォームの方がいいように思ってきました。

mailto古いし・・・


2 ● hamster009
●35ポイント

http://www.yahoo.co.jp/

htmlの文字コードをutf8にすれば問題ありません。

◎質問者からの返答

そうなんですか。

でも、HTMLはSJISで書いており、全面的にutf-8に変えるのは、難しそうですね。

それとも、エンコードする文字列だけをutf-8にすればよいのでしょうか。

試してみます。


3 ● mumusasa
●10ポイント

URLエンコードすれば良い話だと思うのですが、それで解決しませんか?


例えば、

<a href="mailto:foo@bar.com?body=○×案件">お便りはこちら</a>

を Shift_JIS でURLエンコードすれば、

<a href="mailto:foo@bar.com?body=%81%9B%81%7E%88%C4%8C%8F">お便りはこちら</a>

となります。

このキーワード「○×案件」を「%81%9B%81%7E%88%C4%8C%8F」に変更することがエンコードとなります。

※@は全角で記述してある


「TAG index」

http://www.tagindex.com/html_tag/link/a_mailto_sub.html

で、日本語本文をエンコード「したもの」と「しないもの」が記載されていますので、この例が質問者殿の希望に叶うものか試してみてはいかがですか。


「URLエンコード」で望みが叶うなら、このページからリンクされている「URLエンコード」のページをブックマークして、希望のテキストをエンコードすれば良いと思います。

http://www.tagindex.com/tool/url.html


4 ● harrypotter
●10ポイント

化ける環境が無いので分かりませんが、エンティティ化してみるのはどうでしょう。

試したところ手元のマックでもうまくいきましたが、もともと文字化けしないのでよく分かりません。

HTMLエンティティ化

文字化けは環境やメーラーが原因ではないのでしょうか?

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ