So erkennen Sie mit Apache Tika, ob eine Datei beschädigt ist

So erkennen Sie mit Apache Tika, ob eine Datei beschädigt ist

Apache Tika ist eine Bibliothek zur Dateityperkennung und Inhaltsextraktion aus Dateien verschiedener Formate.

Beim Hochladen und Analysieren von Dateien auf einen Server müssen Sie häufig feststellen, ob die Dateien beschädigt sind. Wir können Tika verwenden, um festzustellen, ob die Datei beschädigt ist

Maven wird wie folgt eingeführt:

<Abhängigkeit>
  <groupId>org.apache.tika</groupId>
  <artifactId>tika-app</artifactId>
  <version>1.18</version>
</Abhängigkeit>
<Abhängigkeit>
  <groupId>xerces</groupId>
  <artifactId>xercesImpl</artifactId>
  <version>2.11.0</version>
</Abhängigkeit>

Wenn es einen Konflikt in den JAR-Paketen gibt, können Sie diese wie folgt einführen:

<Abhängigkeit>
  <groupId>org.apache.tika</groupId>
  <artifactId>tika-Kern</artifactId>
  <version>1.18</version>
</Abhängigkeit>
<Abhängigkeit>
  <groupId>org.apache.tika</groupId>
  <artifactId>Tika-Parser</artifactId>
  <version>1.18</version>
</Abhängigkeit>
<Abhängigkeit>
  <groupId>xerces</groupId>
  <artifactId>xercesImpl</artifactId>
  <version>2.11.0</version>
</Abhängigkeit>

Verwenden Sie Tika, um festzustellen, ob die Datei beschädigt ist:

Wenn das Lesen aus dem Eingabestream fehlschlägt, löst die Parse-Methode eine IOException aus. Wenn das aus dem Stream erhaltene Dokument nicht geparst werden kann, wird eine TikaException ausgelöst. Wenn der Prozessor das Ereignis nicht verarbeiten kann, wird eine SAXException ausgelöst.

Wenn ein Dokument nicht analysiert werden kann, ist das Dokument beschädigt.

Ausführungsprozess:

öffentliche statische void main(String[] args) {
    versuchen {
      //Angenommen, sample.txt befindet sich in Ihrem aktuellen Verzeichnis
      Datei Datei = neue Datei("D:\\Test.txt");
      boolesches Ergebnis = isParseFile(Datei);
    } Fang (Ausnahme e) {
      e.printStackTrace();
    }
  }
 
  /**
   * Überprüfen Sie, ob die Datei beschädigt ist*
   * @param Datei Datei * @return true/false
   * @throws Ausnahme
   */
  private static boolean isParseFile(File file) löst Exception aus {
    versuchen {
      Tika tika = neue Tika();
      String Dateiinhalt = tika.parseToString(Datei);
      System.out.println(Dateiinhalt);
      gibt true zurück;
    } Fang (TikaException e) {
      gibt false zurück;
    }
  }

Ausgabe:

Testdaten --- Textinhalt lesen

Zusammenfassen

Oben ist die Methode von Apache Tika, um festzustellen, ob die Datei beschädigt ist. Ich hoffe, sie wird Ihnen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

Das könnte Sie auch interessieren:
  • So erkennen Sie, ob das Apache-Modul mod_rewrite in PHP installiert ist

<<:  Ant entwirft eine Vue-Tabelle, um ein vollständiges Beispiel skalierbarer Spalten zu erhalten

>>:  Probleme bei der Installation von MySQL 8.0 und beim Zurücksetzen des Kennworts

Artikel empfehlen

Detaillierte Erklärung der Vue-Filter

<Text> <div id="Wurzel"> &l...

MySQL 8.0.12 – Schnellinstallations-Tutorial

Die Installation von MySQL 8.0.12 dauerte zwei Ta...

So bereinigen Sie regelmäßig private Docker-Server-Images

Die Verwendung von CI zum Erstellen von Docker-Im...

Beispielcode zum Erstellen eines Admin-Dashboard-Layouts mit CSS und JavaScript

Was Sie erstellen werden In diesem neuen Tutorial...

Alibaba Cloud Centos7.3-Installation, MySQL5.7.18 RPM-Installations-Tutorial

Deinstallieren Sie MariaDB CentOS7 installiert st...

So implementieren Sie Property Hijacking mit JavaScript defineProperty

Inhaltsverzeichnis Vorwort Deskriptoren Detaillie...

Implementierung der MySQL-Mehrversions-Parallelitätskontrolle MVCC

Einstellungen für die Transaktionsisolationsebene...

Tiefgreifendes Verständnis der logischen Architektur von MySQL

MySQL ist heute die Datenbank, die von den meiste...

Vue + echart realisiert Doppelsäulendiagramm

In diesem Artikel wird der spezifische Code von v...

Get/Delete-Methode zum Übergeben von Array-Parametern in Vue

Wenn Front-End und Back-End interagieren, müssen ...

Installieren des Win10-Systems auf VMware Workstation 14 Pro

Dieser Artikel beschreibt zu Ihrer Information, w...