用Jsoup解析HTML文件,并保存到本地
需要引入的Jsoup.jar包:jsoup.jar
推荐阅读的jsoup使用教程:使用JSOUP处理HTML文档
以下是实现Jsoup解析HTML文件,并保存到本地的Java代码:
/** * 这个文件实现了:将指定目录下的所有htm和html文件的<title>标签的值,替换成文件名(不含后缀)。 */import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStreamWriter;import org.jsoup.Jsoup;import org.jsoup.nodes.Document;import org.jsoup.nodes.Element;public class Rename {public static void main(String[] args) {// 默认文件夹路径String path = "C:\\report";if(args != null && args.length > 0){path = args[0];}try {renameHTMLTitle(path);} catch (IOException e) {e.printStackTrace();}}public static void renameHTMLTitle(String dir) throws IOException {File f = new File(dir);if (f.isDirectory()) {File fs[] = f.listFiles();for (File s : fs) {String title = s.getName().replaceAll(".htm", "").replaceAll(".html", "");if(s.getName().contains(".htm") || s.getName().contains(".html")){Document doc = Jsoup.parse(s, "gb2312");Element titleEl = doc.select("title").first();titleEl.html(title);/* * Jsoup只是解析,不能保存修改,所以要在这里保存修改。 */FileOutputStream fos = new FileOutputStream(s, false);OutputStreamWriter osw = new OutputStreamWriter(fos, "gb2312");osw.write(doc.html());osw.close();}}}}}