0

JavaでSAXを使用して解析することにより、HTMLファイルから情報を抽出しています。解析プログラムは譲っていただいたもので、すでに SAX を使っていたので、そのままにしておきたいと思います。私がすることは次のとおりです。

  • Web サイトから HTML ファイルを取得する
  • JTidy ライブラリを使用して有効な XML に変換します。ただし、このライブラリはすべての € 記号を「€」に変換します ---> fileXHTML を取得します
  • ファイル XHTML を解析ライブラリにフィードして、必要なデータを抽出できるようにします (ハンドラ、関数 startElement()、characters()、および endElement() を作成しました)。

問題: ユーロ記号の新しい文字列では、解析ライブラリが実行されません。「エンティティ acirc は参照されましたが、宣言されていません」 というメッセージが表示されます。

ユーロ記号が問題にならないようにしたいだけです。どうすれば自分のものを整理できますか?

みんな、ありがとう、

4

2 に答える 2

1

あなたが抱えている問題は、エンコーディングの問題です。

パイプラインのどこかで何らかのツールがエンコーディングを台無しにしており、そのエラーが引き継がâれ、出力に が作成されます。

見たところ、Web サイトは UTF-8 を使用していますが (そうすべきです)、エンコーディングが間違って宣言されているか、宣言が無視されています。

ツールチェーン内のツールの 1 つがこの問題を引き起こしているのか、それともツールの誤用なのかは完全には明らかではありません。

于 2013-10-21T11:25:09.977 に答える
0

実際のユーロ記号の代わりに HTML 番号を使用してください€

于 2013-10-21T11:22:47.723 に答える