java獲取文件編碼,jsoup獲取html純文本操作
maven引入獲取編碼的jar
<dependency> <groupId>com.ibm.icu</groupId> <artifactId>icu4j</artifactId> <version>67.1</version> </dependency>
獲取文件編碼
package com.lovnx.note.util;
import com.ibm.icu.text.CharsetDetector;
import com.ibm.icu.text.CharsetMatch;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
import java.io.IOException;
import java.net.URL;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
/**
* @author @256g的胃
* @ClassName HtmlParse
* @Description
* @Date 15:32 2020/7/9
**/
public class HtmlParse {
public static String getEncode(String filePath) throws IOException {
Path path = Paths.get(filePath);
byte[] data = Files.readAllBytes(path);
CharsetDetector detector = new CharsetDetector();
detector.setText(data);
CharsetMatch match = detector.detect();
String encoding = match.getName();
System.out.println("The Content in " + match.getName());
return encoding;
}
public static void main(String[] args) throws Exception {
System.out.println(HtmlParse.getEncode("/Users/cxt/Downloads/test.html"));
}
}
上面獲取文件編碼是為了在服務(wù)器根據(jù)文件流下載文件時(shí)防止文件亂碼直接指定編碼格式,然后再根據(jù)下載下來(lái)的文件識(shí)別純文本
Document doc = Jsoup.parse("讀取的文本字符串,此處應(yīng)該是帶html標(biāo)簽的");
String text = doc.text();
jsoup也支持 直接指定文件的形式去獲取純文本
補(bǔ)充知識(shí):java 解析html/讀取html內(nèi)容
jsoup
String 轉(zhuǎn)化
1、Document doc = Jsoup.parse(html);
例如:
String html = "<html><head><title>First parse</title></head>" + "<body><p>Parsed HTML into a doc.</p></body></html>"; Document doc = Jsoup.parse(html); System.out.println(doc.text()); ;
常用api
2、獲取節(jié)點(diǎn)文本:Document.text();
以上這篇java獲取文件編碼,jsoup獲取html純文本操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
idea中寫sql語(yǔ)句沒(méi)有提示字段的問(wèn)題
在IDEA中編寫SQL時(shí)如果沒(méi)有字段提示,通常是因?yàn)闆](méi)有設(shè)置注入語(yǔ)言,解決方法是通過(guò)快捷鍵Alt+Enter選擇“注入語(yǔ)言或引用”,然后選擇相應(yīng)的數(shù)據(jù)庫(kù)(如MySQL),之后重新輸入SQL語(yǔ)句即可,此方法可以有效解決IDEA中SQL語(yǔ)句提示問(wèn)題,提高開發(fā)效率2024-09-09
SpringSecurity在單機(jī)環(huán)境下使用方法詳解
本文詳細(xì)介紹了SpringSecurity和SpringBoot的整合過(guò)程,包括配置用戶認(rèn)證、JSP頁(yè)面的使用、數(shù)據(jù)庫(kù)認(rèn)證以及授權(quán)功能的實(shí)現(xiàn),感興趣的朋友一起看看吧2025-02-02
Spring boot validation校驗(yàn)方法實(shí)例
這篇文章主要給大家介紹了關(guān)于Spring boot validation校驗(yàn)方法的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
如何實(shí)現(xiàn)自己的spring boot starter
這篇文章主要介紹了如何實(shí)現(xiàn)自己的spring boot starter,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08
深入了解Java數(shù)據(jù)結(jié)構(gòu)和算法之堆
這篇文章主要為大家介紹了Java數(shù)據(jù)結(jié)構(gòu)和算法之堆 ,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-01-01

