- PR -

JSPでUnicodeから,任意の文字エンコーディングに変換する場合の指定は何処でするのでしょうか?

1
投稿者投稿内容
torakiyojp
常連さん
会議室デビュー日: 2004/08/04
投稿数: 23
投稿日時: 2004-08-04 12:16
はじめまして。
実は本件の質問を他のページでもしていて、マルチポストということなるかと思いますが、
こちらで、
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=13499&forum=12
のような、やり取りがあったようですので、質問させてください。

<%@ page contentType="text/html; charset=Shift_JIS" pageEncoding="Shift_JIS" %>
のcharsetとpageEncodingは、ソースを作成した環境により変わると思いますが(Windowsで作成したものは、Shift_JIS。等)、この指定でUnicodeに変換されたものは、何処の指定により動作環境に合ったコードに変換されるのでしょうか?
この指定がUnicodeからのエンコーディングの場合にも生きるのでしょうか?
生きるとすると、WindowsでShift_JIS指定して作ったJSPが、なぜUNIX上でも動くのでしょうか?

質問自体がおかしい場合も指摘して頂けるとありがたいです。
よろしくお願いします。
okutin
ベテラン
会議室デビュー日: 2003/12/11
投稿数: 98
お住まい・勤務地: 広島
投稿日時: 2004-08-04 12:58
こんにちは。

引用:

torakiyojpさんの書き込み (2004-08-04 12:16) より:
この指定でUnicodeに変換されたものは、何処の指定により動作環境に合ったコードに変換されるのでしょうか?
この指定がUnicodeからのエンコーディングの場合にも生きるのでしょうか?
生きるとすると、WindowsでShift_JIS指定して作ったJSPが、なぜUNIX上でも動くのでしょうか?



動作環境に合ったコードに変換されるわけではありません。
javaVMも含めたOS上で動作するアプリケーションがOSのデフォルトエンコーディングを
必ず使わないといけないという理由はありませんので。
Windows上でもEUCを扱うアプリケーションはいくつもありますよね。
(ブラウザやテキストエディタなど)
Shift_JIS指定のものはUNIX上であろうとShift_JISとして処理されます。
torakiyojp
常連さん
会議室デビュー日: 2004/08/04
投稿数: 23
投稿日時: 2004-08-04 13:42
ご解答ありがとうございます。

引用:

okutinさんの書き込み (2004-08-04 12:58) より:
Shift_JIS指定のものはUNIX上であろうとShift_JISとして処理されます。



なるほど、よくわかりました。
<%@ page contentType="text/html; charset=Shift_JIS" pageEncoding="Shift_JIS" %>
を指定すると
Shift_JIS→Unicode→Shift_JISとなるわけですね。

JSPの作成環境についてはWindowsで作成する場合はShift_JISにするという考えでよろしいでしょうか?Shift_JIS以外でも文字化けしない場合があるのでしょうか?
おがわ
大ベテラン
会議室デビュー日: 2001/08/01
投稿数: 199
お住まい・勤務地: 千葉県
投稿日時: 2004-08-04 14:12
ソースを保存する際の文字コードは,ソースを編集するエディタソフト等の都合で決めていいと思います。
ただ,そんなに文字化けが気になるのでしたら,思い切って"UTF-8"にしたらいかがでしょうか。
例えば,EclipseやJBuilder等の人気かつ高機能なIDEツールは,Javaでサポートする文字エンコーディングの範囲内で,ソース保存用の文字セットを自由に選択できます。
また,Webブラウザについても,最近の製品はどれもUnicode表示を標準サポートしています。

_________________
Kan Ogawa
k-ogawa@users.sourceforge.jp
torakiyojp
常連さん
会議室デビュー日: 2004/08/04
投稿数: 23
投稿日時: 2004-08-04 14:48
SuperCreekさん解答ありがとうございます。

SuperCreekさんの解答で、疑問が氷解しました。
私は開発現場を今の場所しか知らず、使うエディタ等も指定されていて、
エンコード指定もShift_JISとするものだと教えられていた為、このような質問をしてしまいました。そもそもの疑問の発端は「JAVA PRESS」のエンコード特集を読んだところから始まりました。読解力がなかったようです。

本当にありがとうございました。
1

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