お世話になっております。
掲題の質問について、ご教示いただけないでしょうか。
【質問】
サーバーAのサーブレットA1より、
サーバーBのサーブレットB2へ漢字をPOSTしようとしています。
エンコードはサーブレットA1,B2ともにShift_JISを使用しています。
しかし、A1より送信した漢字のデータをB2で表示させると"?"になってしまいます。
どなたかサーブレットB2でもShift_JISとして、漢字表示させる方法をご教示ください。
【サーブレットA1の該当箇所】
URL url = new URL("サーブレットB2のURL");
HttpURLConnection conn = (HttpRLConnection) url.openConnection() ;
conn.setRequestMethod("POST");
conn.setRequestProperty("Accept-Language","ja");
conn.setDoOutput(true);
PrintWriter writer = new PrintWriter(new OutputStreamWriter(conn.getOutputStream() , "Shift_JIST") ;
writer.print("data=漢字");
【サーブレットB2の該当箇所】
public void doPost(HttpServletRequest req, HttpServletResponce resp){
try{
req.setCharacterEncoding("Shift_JIS");
resp.setContentType("text/html;charset=Shift_JIS");
System.out.println( req.geParameter("data") );
}catch(Exception e){
System.out.println(e);
}
}
以上、宜しくお願いいたします。
No.1ベストアンサー
- 回答日時:
ざっと見たところ、テキストをURLエンコードせず、そのままクエリー文字列にしているように見えますが。
送信する際にURLエンコードし、受け取った側でURLデコードすれば文字化けはしないと思います。エンコード
URLEncoder.encode(テキスト , エンコード名);
デコード
URLDecoder.decode(テキスト , エンコード名);
No.2
- 回答日時:
方法は幾つかありますが。
プリミティブな方法で。>>PrintWriter writer = new PrintWriter(new OutputStreamWriter(conn.getOutputStream() , "Shift_JIST") ;
>>writer.print("data=漢字");
↓
PrintWriter writer = new PrintWriter( conn.getOutputStream() );
writer.print( new String( "data=漢字".getBytes( "Shift_JIS" ) ) );
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- Excel(エクセル) ExcelでA1に「年」B2に「干支」を表示する関数 6 2023/08/17 15:51
- Excel(エクセル) エクセルの数式について教えて下さい。 8 2023/05/27 12:17
- JavaScript 電車の運賃を出すプログラムを作っています。 2 2022/06/22 09:36
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- Excel(エクセル) エクセルの数式で教えてください。 5 2023/02/10 15:11
- Excel(エクセル) Google Spreadsheetのカスタム表示形式について 2 2023/05/20 09:10
- Java 問題作成のWebアプリの作り方を教えてください 1 2022/11/26 22:01
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
utf-8でメールを送信すると件名...
-
postmail ver4.3でメールを送る...
-
文字化けとパスワード変更
-
SQLServerへの出し入れで文字化け
-
ポインター引数の関数でコンパ...
-
stable diffusionのエラー
-
IEレジストリのSavedLegacySe...
-
現在日時から、任意の時日時を...
-
なんでブラウザでPHPを動かすた...
-
10Mバイトて文字数に すると何...
-
サブドメインでのクッキー認証
-
char str[256]の256の意味は?
-
クッキーのデータ取得
-
ListView重複データ削除
-
バイナリデータからの値の取得...
-
Excel VBA メール作成について ...
-
C++ Builderで文字列をバイトに...
-
データの値の近いものをグルー...
-
[VBScript][wsh]byte単位でのデ...
-
Windows 2003 サーバー のファ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
&jcode'convert(しても文字化け...
-
応募フォームなどの住所欄で最...
-
utf-8でメールを送信すると件名...
-
ESC/Pのテキスト印字の制...
-
全角カタカナチェックについて
-
CGIメールフォームのメールが文...
-
フォームメールを受信すると文...
-
SQLServerへの出し入れで文字化け
-
これはなんて文字コードかわか...
-
Window open パラメタについて
-
CGI掲示板の文字化け
-
文字コードsjisをUTF8に書き換...
-
CGIフォームから飛ばすメールが...
-
HttpURLConnection転送で漢字表示
-
PerlのCGIで全角スペースを入れて
-
.cgi でタグが勝手に変換されま...
-
CGI(Perl)の文字化けについて
-
検索窓の設置について
-
JavaScriptからCGI
-
perl cgi のエンコード SHIFT...
おすすめ情報