私は次のようなJSoupドキュメントを作成しています。
String user_agent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/A.B (KHTML, like Gecko) Chrome/X.Y.Z.W Safari/A.B.";
String url = "http://www.ncbi.nlm.nih.gov/pmc/articles/PMC24391/?tool=pubmed";
Document doc = return Jsoup.connect(url).userAgent(user_agent).get();
次に、を使用してファイルに保存するdoc.toString()
と、保存されたファイルに文字が。に置き換えられているのがわかります?
。たとえば、5 μm
になり5 ?m
ます。
ISO-8859-1文字セットを使用するように出力設定を変更すると、問題ないようです。
誰かがこれがなぜであるか説明できますか?私の理解では、元のhtmlページはUTF-8であり、これはデフォルトのJsoupエンコーディングです。