- PR -

HttpURLConnectionでの文字化け

1
投稿者投稿内容
くろ
常連さん
会議室デビュー日: 2004/08/17
投稿数: 42
投稿日時: 2006-03-28 19:33
こんばんわ、くろです。

文字コードの部分で、また苦戦をしておりまして、
お力添えをお願い致します。

---------------------------------------------------------------
public void HttpCon(URL url) throws ProtocolException ,ConnectException {
try {
con=(HttpURLConnection) url.openConnection();

con.setUseCaches(false);
con.setRequestMethod(method);

HttpURLConnection.setFollowRedirects(true);

con.setRequestProperty("User-Agent" ,agent);

con.setInstanceFollowRedirects(true);

con.setConnectTimeout(5000);
con.setReadTimeout(5000);

con.connect();

InputStreamReader isr =
new InputStreamReader(con.getInputStream(),"JISAutoDetect");

BufferedReader bur = new BufferedReader(isr);

String line = "";
String ret = "";

while((line = bur.readLine())!=null) {
ret += line;
}

System.out.println(ret);

bur.close();
isr.close();

} catch (FileNotFoundException e) {
log.error(e);
} catch (IOException e) {
e.printStackTrace();
}
}
---------------------------------------------------------------

という感じで、接続先のページにアクセスをして、
HTMLを取得しているのですが、「JISAutoDetect」を指定しても、
取得した内容が「?」になってしまいます。

他にやり方があったり、
記載したプログラムに誤りがありましたら、
ご指摘をお願い致します。

OS:CentOS4.3
LANG:en_US.UTF-8
JAVA:1.5.0_06
ゆう
常連さん
会議室デビュー日: 2003/06/27
投稿数: 45
投稿日時: 2006-03-28 19:58
 当方の環境では、Shift_JIS, EUC, iso-2022-jpの内容を
文字化けなしに表示できました。

OS:Win XP
JAVA:1.5.0_06
コマンドプロンプトから実行


 基本的なことをお尋ねするようで失礼かもしれませんが、
日本語対応版のターミナルで実行されていますか?
 Eclipseなどの実行でも同様でしたらごめんなさい。

 あとは、LANG ja_JP.UTF-8に指定して実行してみては?

[ メッセージ編集済み 編集者: 悠 編集日時 2006-03-28 20:13 ]
ゆう
常連さん
会議室デビュー日: 2003/06/27
投稿数: 45
投稿日時: 2006-03-28 20:13
二重投稿のため削除しました。
ごめんなさい。

[ メッセージ編集済み 編集者: 悠 編集日時 2006-03-28 20:14 ]
くろ
常連さん
会議室デビュー日: 2004/08/17
投稿数: 42
投稿日時: 2006-03-28 22:23
悠さん、ありがとうございます。

Windows上では、ちゃんと文字化けが発生せずに出力できています。

はい、ターミナルはテラタームで、UTF-8で、操作を行っております。

最近サーバが不安定なので、これを入れなおしてから
もう一度心みたいと思います。

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

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