JSP学習ノート-JSP 002中国語文字問題


ケース:静的htmlはutf-8フォーマットを設定して、titleとkeywordsはすべて中国語があって、しかも時には繁体字で、例えば断片
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
	<title>    </title>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
	<meta http-equiv="Pragma" content="no-cache"/>
	<meta content="    " name="description"/>
	<meta content="   " name="keywords"/>
</head>
<body>
...
</body>
</html> 

しかし、ページが表示されず、ソースファイルを選択してコードが存在することを確認する奇妙な現象が発生することがあります.
 
解決方法:文字セットの宣言を一番前に置きます.たとえば、
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
	<title>    </title>
	<meta http-equiv="Pragma" content="no-cache"/>
	<meta content="    " name="description"/>
	<meta content="   " name="keywords"/>
</head>
<body>
...
</body>
</html> 

これでページ情報がうまく表示されます
 
JSPは最終的にhtmlコードを生成し、クライアントにダウンロードしてブラウザで解析表示します.htmlは上から下へ解析されるため、ケースでは文字セットがheadの2行目に宣言され、1行目のtitleに含まれる中国語はブラウザのデフォルト文字セットによって解析され、繁体字で遊覧器のデフォルト文字セットがbig 5や簡体字ではなく、ブラウザのデフォルト文字セットがgb 2312ではない場合、空白のページが表示されます.
 
間違いがあればご指摘ください.ありがとうございます.