- - PR -
英語版 Windows 2003 Server(ASP.NET)での日本語利用について
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-06-11 10:05
初めて投稿させて頂きます。
先日海外(英語)のレンタルサーバを借りて動作確認を行っているのですが、実行時にエラーが発生して困っています。 環境:Windows 2003 Server,ASP.NET 2.0 発生状況ですが、 Response.Write ("リンク") と表記すると、 【エラーメッセージ】 Compiler Error Message: BC32017: Comma, ')', or a valid expression continuation expected. 【エラー部分】 Response.Write ("****"****") ←文字化け表記中に「"」が含まれている となり、どうやらカタカナの「ン」が英語版だと「"」ダブルクォーテーションを含みエラーが発生しているようです。 文字化け時に「"」を含むような、文字が存在した場合、回避する方法はあるのでしょうか? 英語版で日本語(漢字)を利用するためのコーディング方法をご存知の方がいらっしゃれば教えていただけないでしょうか? また、上記とは別にもしやと思い、ホスティングサービスのサポートに「.NET Framework 日本語 Language Pack」をインストールして欲しいとお願いしました。 http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=39c8b63b-f64b-4b68-a774-b64e サポートでは「インストールした」と言っているのですが、実行エラー時の表記が未だに英語なのですが、日本語表記をさせるための特別なコーディングが必要なのでしょうか? よろしくお願い致します。 [ メッセージ編集済み 編集者: SHIN 編集日時 2006-06-11 10:06 ] [ メッセージ編集済み 編集者: SHIN 編集日時 2006-06-11 10:09 ] | ||||||||
|
投稿日時: 2006-06-11 10:12
生成されているHTMLファイルや、HTTPヘッダの言語は何が帰ってきていますか?恐らくUnicode→指定されている言語への変換に失敗しているのではないかと思うのですが。
| ||||||||
|
投稿日時: 2006-06-11 10:37
返信ありがとうございます。
うまく実行できている時のHTMLのソース表示→ <HEAD> 部分ですが、 <HEAD> <title>WebForm1</title> <meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1"> <meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> </HEAD> となっていました。通常、言語の情報は含まれるのでしょうか?だとしたら、何も帰ってきていないような気がします。 言語を指定するコーディングが必要なのでしょうか? それと、補足ですが、「<%@ Page >」のところに 日本語を指定すると(例えばcodepage="932" や "50221")同じようなエラーが発生します。 | ||||||||
|
投稿日時: 2006-06-11 13:53
HEADの先頭に<meta http-equiv="Content-Type" content="text/html; charset=文字コード">って指定がないけど。 | ||||||||
|
投稿日時: 2006-06-11 15:10
ぶさいくろう様 ありがとうございます。
まず、過去のスレッドで「@ page ディレクティブに codePage 属性を追加」すると「charset パラメータが追加される」とあるのですが、 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=1632&forum=7 @ pageディレクティブに 「CodePage="932"」を指定しても<meta>要素は追加されませんでした。 そこで、ぶさいくろう様のご指摘を受けてmeta要素を書き加えました。 <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> が、根本的な解決になっていないようで、 【エラー表示部】 Response.Write ("※※※"※※") やはり特定の文字に対して「"」ダブルクォーテーションとして認識してしまうようです。 ちゃんみに、エラーの発生する文字を除いてやると <HEAD> <title>WebForm1</title> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1"> <meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> </HEAD> 書き加えた部分は表示されていました。 甕星様の言われるとおり Unicodeから日本語(codepage=932)への変換時になにかおかしな事が起きているようですが、見当がつきません。 エラーの発生する文字を使わなければ良いんですが、それじゃちょっとねぇ・・・ | ||||||||
|
投稿日時: 2006-06-12 05:13
海外のWebホスティングを利用していますが、日本語も問題なく動作しますね。 何か別の問題のような気がします。とりあえず、Webマスターに日本語が問題ないか 確認してみたらどうでしょうか。 あと、Web.configに以下の要素を追加するとか・・・ <globalization culture="ja-JP" uiCulture="ja-JP"/> 「リンク」を表示するプログラム: http://akiokasai.qsh.eu/temp/temp01.aspx
_________________ ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集 | ||||||||
|
投稿日時: 2006-06-12 14:48
aspxファイルに保存するときの文字コードも影響すると思います。
VS.NETがSHIFT-JISで、WebMatrixがUnicodeだったかな。 Web.ConfigでFileEncodingを明示するとか。 http://europe.webmatrixhosting.net/japan/text.aspx?tmpl=board_thread&m_no=9438&d_no=68179 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=26848&forum=7 | ||||||||
|
投稿日時: 2006-06-12 21:16
Access様 todo様 ありがとうございます。
unicode保存で解決いたしました。 簡単なコーディングでしたのでtextエディタ(メモ帳)で編集をしておりました。 別にも海外サーバを利用しており、そこでは全く問題無かったので、同じコードなのに???と思っておりました。 日本人向けの海外サーバと、そうでないサーバでの違いが現れたのかと思います。 どうもありがとうございました。 |
1