Web ページのソース コードを含む Java クラスから HTML レポートを作成する必要があります。問題は、Web ページのソースが検出されるとすぐに、ブラウザーによってメイン レポート ページの html タグの末尾であると見なされ、出力が正しくレンダリングされないことです。以下に例を示します。
<html>
<body>
<li>
<pre>
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
<head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
The page was not found on this server.
</body>
</html>
</pre>
</li>
</body>
</html>
pre タグ内のすべてを、html マークアップではなく通常のテキストとして取得する必要があります。、、などに置き換え<
てみましたが、うまくいかないようです。これを可能にするためのヒントはありますか?<
>
>
&
&
編集:これは私が試したものです(aはpreタグ内の部分です)
File aFile = new File(filename);
try {
BufferedWriter out = new BufferedWriter(new FileWriter(aFile,aFile.exists()));
a.replaceAll("<","<");a.replaceAll(">",">");a.replaceAll("\"","&;quot;");a.replaceAll("&","&");
out.write(a + "\r\n");
out.close();
}
編集2:
したがって、この正しい解決策にはa = a.replaceAll(...)が含まれていましたが、注意すべきもう1つのことは、<を>に置き換え、後で&を&に置き換えると(上記の例のように)、再び私の出力を台無しにします(<は<になります)。そのため、順序も変更する必要があります (replcae & 最初、次に <)。