我正在通过
提取Java中的HTML源代码DefaultHttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(url);
HttpResponse response = client.execute(httpGet);
if (response.getStatusLine().getStatusCode() == 200)
{
sourcepage = EntityUtils.toString(response.getEntity(), "UTF-8");
}
client.getConnectionManager().shutdown();
此代码是我的代码的基线,我将在HTML代码的每一行上执行不同的功能。但是,代码的某些行太长。例如,一行的长度是49966,这在运行代码时会产生一些计算成本问题。我想知道在阅读HTML源代码时是否可以打破HTML行 - 如果它的长度大于阈值?
这也是我逐行阅读代码的方式:
String[] each_line = sourcepage.split("\r?\n");
答案 0 :(得分:0)
这取决于你之后想要用HTML做什么。如果您只是想阅读它,那么您可以在每个以/>
结尾的HTML元素之后添加换行符(即content.replace("/>", "/>\n")
加上您可以对</[^>]+>
进行正则表达式搜索并添加换行符每场比赛结束后。
这应该很好地打破HTML。注意:通常,regexp不是处理HTML的正确工具。但在这种特殊情况下,这已经足够了。
另一种选择是将JTidy添加为代码的依赖项。它具有美化HTML的代码格式化程序。