解決済みの質問

質問No.5045311
すぐに回答を!
すぐに回答を!
お気に入り投稿に追加する (0人が追加しました)
回答数1
閲覧数272
Web ページのテキスト取得
URL url = new URL("http://www.yahoo.co.jp/");
BufferedReader br = new BufferedReader(
new InputStreamReader(url.openStream()));
String str;
while ((str = br.readLine()) != null) {
System.out.println(str);

とすればyahooのhtmlが出力されますが、日本語が文字化けします。
対策を教えてください。

また、yahooのようなページのテキスト(htmlタグを除く)だけを取得する方法を教えてください。
投稿日時 - 2009-06-15 09:53:26

質問者が選んだベストアンサー

回答No.1
日本語が文字化け対応
もし、コマンドプロンプトへの出力での文字化けであれば、コマンドプロンプトの文字コードをUTF-8に変更、レジストリもいじって日本語も表示できるようにする必要もあり。参考URL 1番目

その他の環境での文字化けでも、UTF-8文字列をMS932として解釈しているはずなので、環境をUTF-8に変更すれば解決するはず。

テキスト(htmlタグを除く)だけを取得する方法
HTML自体がテキストなので、何をしたいのか、よく分からん。
画面に表示されるテキストのみ取得したいという意味なら、自前でHTMLを解析するか、既存のHTMLパーサを利用する。参考URL 2番目
投稿日時 - 2009-06-15 16:45:02
この回答を支持する
(現在0人が支持しています)
お礼
ありがとうございます。
最初の件は、InputStreamReader の第2パラに String で "utf-8" を指定したらうまくいきました。
HTML パーサを調べて見ます。
投稿日時 - 2009-06-15 20:26:32
この質問は役に立ちましたか?
0人が「このQ&Aが役に立った」と投票しています
別のキーワードで再検索する
もっと聞いてみる

関連するQ&A

回答募集中

この他の関連するQ&Aをキーワードで探す

-PR-

OKWaveのおすすめ情報

特集

同じカテゴリの人気Q&Aランキング

カテゴリ
Java

回答のついた最新のQ&A

-PR-

ピックアップ

ノウハウ共有サイト

-PR-
-PR-