Нет никакого способа отличить CSV от TXT, кроме как по имени файла!
дал.csv
используя файл Excel, и я написал следующий код, используя Apache Tika:
public static boolean checkThatMimeTypeIsCsv(InputStream inputStream) throws IOException {
BufferedInputStream bis = new BufferedInputStream(inputStream);
AutoDetectParser parser = new AutoDetectParser();
Detector detector = parser.getDetector();
Metadata md = new Metadata();
MediaType mediaType = detector.detect(bis, md);
return "text/csv".equals(mediaType.toString());
}
public static void main(String[] args) throws IOException {
System.out.println(checkThatMimeTypeIsCsv(new FileInputStream("Data.csv")));
}
Но это возвращаетсяfalse
».
Тика так плохо или я что-то пропустил?