亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

java讀取html文件,并獲取body中所有的標簽及內容的案例

瀏覽:46日期:2022-08-26 17:07:00

這里的獲取的是html文件中body中的所有標簽以及內容

package com.lmt.service.file;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.InputStreamReader;import java.io.Reader;import org.springframework.stereotype.Component;import com.lmt.config.UrlConstants;@Componentpublic class ParseFile { /** * 解析html文件 * @param file * @return */ public String readHtml(File file){ String body = ''; try { FileInputStream iStream = new FileInputStream(file); Reader reader = new InputStreamReader(iStream); BufferedReader htmlReader = new BufferedReader(reader); String line; boolean found = false; while (!found && (line = htmlReader.readLine()) != null) {if (line.toLowerCase().indexOf('<body') != -1) { // 在<body>的前面可能存在空格 found = true;} } found = false; while (!found && (line = htmlReader.readLine()) != null) {if (line.toLowerCase().indexOf('</body') != -1) { found = true;} else { // 如果存在圖片,則將相對路徑轉換為絕對路徑 String lowerCaseLine = line.toLowerCase(); if (lowerCaseLine.contains('src')) {//這里是定義圖片的訪問路徑 String directory = 'D:/test'; // 如果路徑名不以反斜杠結尾,則手動添加反斜杠 /*if (!directory.endsWith('')) { directory = directory + ''; }*/ // line = line.substring(0, lowerCaseLine.indexOf('src') + 5) + directory + line.substring(lowerCaseLine.indexOf('src') + 5); /*String filename = extractFilename(line); line = line.substring(0, lowerCaseLine.indexOf('src') + 5) + directory + filename + line.substring(line.indexOf(filename) + filename.length()); */ // 如果該行存在多個<img>元素,則分行進行替代 String[] splitLines = line.split('<imgs+'); // <img后帶一個或多個空格 // 因為java中引用的問題不能使用for each for (int i = 0; i < splitLines.length; i++) { if (splitLines[i].toLowerCase().startsWith('src')) {splitLines[i] = splitLines[i].substring(0, splitLines[i].toLowerCase().indexOf('src') + 5) + directory + splitLines[i].substring(splitLines[i].toLowerCase().indexOf('src') + 5); } }// 最后進行拼接 line = ''; for (int i = 0; i < splitLines.length - 1; i++) { // 循環次數要-1,因為最后一個字符串后不需要添加<img line = line + splitLines[i] + '<img '; } line = line + splitLines[splitLines.length - 1]; } body = body + line + 'n';} } htmlReader.close(); // System.out.println(body); } catch (Exception e) { e.printStackTrace(); } return body; } /** * * @param htmlLine 一行html片段,包含<img>元素 * @return 文件名 */ public static String extractFilename(String htmlLine) { int srcIndex = htmlLine.toLowerCase().indexOf('src='http://www.aoyou183.cn/bcjs/); if (srcIndex == -1) { // 圖片不存在,返回空字符串 return ''; } else { String htmlSrc = htmlLine.substring(srcIndex + 4); char splitChar = ’'’; // 默認為雙引號,但也有可能為單引號 if (htmlSrc.charAt(0) == ’’’) {splitChar = ’’’; } String[] firstSplit = htmlSrc.split(String.valueOf(splitChar)); String path = firstSplit[1]; // 第0位為空字符串 String[] secondSplit = path.split('[/]'); // 匹配正斜杠或反斜杠 return secondSplit[secondSplit.length - 1]; } } }

補充知識:StandardEngine[Catalina].StandardHost[localhost].StandardContext[]

jar包沒有正確導入

1、在 build path 中添加

java讀取html文件,并獲取body中所有的標簽及內容的案例

2、如果這里不添加在編譯的時你的jar包將不會被導入

java讀取html文件,并獲取body中所有的標簽及內容的案例

3、如果依然沒有成功請刪除user jar包重新導入

以上這篇java讀取html文件,并獲取body中所有的標簽及內容的案例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
主站蜘蛛池模板: xxxvideos3d性动漫| 亚洲国产天堂久久九九九 | 外国一级黄色片 | 亚洲 国产 路线1路线2路线 | 免费观看欧美一级牲片一 | 这里只有精品99re在线 | 久久精品综合 | 色综合天天色 | 成人性色生活片免费看爆迷你 | 国产精品va在线观看一 | 国产这里有精品 | 午夜一级视频 | 中文字幕在线观看第一页 | 亚洲黄网址 | 自拍视频在线观看视频精品 | 色多多成视频人在线观看 | 日韩在线视频网站 | 欧美一区二区三区网站 | 国产成人盗拍精品免费视频 | 免费a在线看 | 视频一本大道香蕉久在线播放 | 国产大片网站 | 精品一区二区三区在线成人 | 99re8免费视频精品全部 | 亚洲涩色 | 999jjj在线播放 | 美国a级作爱片免费观看美国 | 一级日韩一级欧美 | 精品小视频在线观看 | 久久国产区 | 一区二区在线视频 | 伊人久久免费视频 | 国内精品自在自线视频香蕉 | 九九热线 | 精品久久不卡 | 亚洲精品国产网红在线 | 成年人网站在线观看免费 | 99久久精品国产综合一区 | 国产大片喷水在线在线视频 | 国产一区高清 | 国产极品精频在线观看 |