←フエルチラシノウラ。トップページへもどる。

JavaアプリからShift_JISなサーバ側プログラムへ"?"などを文字化けさせずにデータをPOSTする方法

Java 文字コード Shift_JIS 文字化け UTF-8 Unicode ? チルダ MS932 tilda

/**
* JavaアプリからShift_JISなサーバ側プログラムへ
* 文字化けさせずにデータを送信する
*/

/** 送信先URL */
String targetUrl = "http://localhost/hoge.cgi";

// URLインスタンスを生成
URL url = new URL(targetUrl);
URLConnection con = url.openConnection();

// 出力を行うように設定
con.setDoOutput(true);

// PrinterWriter生成 文字コードは"MS932"
PrintWriter pw = new PrintWriter(new OutputStreamWriter(con.getOutputStream(),"MS932"));

// 送信データを作成
String parameter = "param=" + 
 URLEncoder.encode("てすと?","MS932"); // 試しに文字化けする文字列"?"を含めて送信してみよう。。。

// 文字コードは明示的に"MS932"
String senddata = new String(parameter.getBytes("iso-8859-1"),"MS932");

// 送信
pw.print(senddata);

// 閉じる
pw.close();

// WEBサーバからのレスポンスを読み込んで出力
BufferedReader br;
String buf;
br = new BufferedReader(new InputStreamReader(con.getInputStream()));
while((buf=br.readLine())!=null){
         System.out.print(buf);
}

http://goodjob.boy.jp/chirashinoura/id/22.html

作成日: 2005-10-03 23:06:24

最終更新日: 2005-11-28 18:56:45

▲このページの上へ