2011-02-22 11 views

答えて

1

私はこれがまさにあなたが必要としていると信じています。コードと説明の両方を持っています。次のようにhttp://nadeausoftware.com/node/73

速い概要は次のとおりです。

  1. コンストラクタpublic WebFile(String urlString)は、URLConnectionを開き、文字エンコーディングを含むヘッダ、読み込み:

    はWebFileクラスを作成します。エンコーディングが存在しない場合は、Webページ自体からエンコーディングを読み取る必要があります。 Character Encoding Detection Algorithm

  2. private Object readStream(int length, java.io.InputStream stream)private Object readStream(int length, java.io.InputStream stream)ストリームからページデータを読み込み、return new String(bytes, charset)という文字エンコーディングを使用してStringを返します。またはストリームを読み込んで作成したバイト配列を返します。エンコーディングが存在しないか、エンコーディング例外が存在する場合
  3. あなたは、ページコンテンツのためのゲッターとセッター(例えばreadStreamは一度だけ、エンコーディングを返し呼び出す)
+2

*外部リソースへのリンクは適切ではありません。リンクが無効になり、無用になる可能性があります。あなたの答えには、少なくとも*要約が必要です。 –

+0

@ Joachim Sauer:そのページの完全な説明を書き直したくないですが、無効なリンクシナリオについては考えていませんでした。修正しました。 –

2

開きます(URL.openConnection()を使用して)URLへの接続を持って、ADN getContentType()によって返されたコンテンツタイプを解析メソッド(文字セットを含める必要があります)。このヘッダーに含まれていない場合は、HTMLコンテンツを解析して、タグを探す必要があります。

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> 
+0

私は「する必要があります」を「必要がある」に変更します。 –

+0

'<?xml version =" 1.0 "encoding =" ISO-8859-1 "?>'のようなXML宣言も見てください。 (存在する場合は、文書の冒頭にあるはずです。) –

関連する問題