/* * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template */ package com.megatim.fdxcommons.tools; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.nio.charset.Charset; import java.nio.charset.UnsupportedCharsetException; import org.apache.tika.parser.txt.CharsetDetector; import org.apache.tika.parser.txt.CharsetMatch; /** * * @author ASUS */ public class FileUtilities { public static Charset getCharset(File file) throws FileNotFoundException, IOException { try ( InputStream stream = new FileInputStream(file); InputStream input = new BufferedInputStream(stream);) { CharsetDetector charsetDetector = new CharsetDetector(); charsetDetector.setText(input); CharsetMatch charsetMatch = charsetDetector.detect(); String charsetName = charsetMatch != null ? charsetMatch.getName() : "UTF-8"; return Charset.forName(charsetName); } catch(UnsupportedCharsetException ex) { return Charset.forName("UTF-8"); } } }