Metaadatok olvasása a DOCX-ből Java használatával

A digitális technológia modern korszakában a dokumentumokon belüli rejtett információk feltárása kulcsfontosságú a hatékony dokumentumkezelés és -elemzés szempontjából. A dokumentumok metaadatai, beleértve az olyan részleteket, mint a szerzőség, a létrehozás dátuma és a felülvizsgálati előzmények, értékes betekintést nyújtanak a dokumentumok eredetébe és fejlődésébe. Ez a cikk azt a folyamatot tárgyalja, hogyan lehet olvasni metaadatokat a(z) DOCX webhelyről Java használatával, a metaadatkönyvtárat kihasználva. Ez lehetővé teszi a fejlesztők számára, hogy mélyebbre ássák dokumentumtáraikat, és javítsák dokumentumfeldolgozási munkafolyamataikat. Az alábbiakban az alapvető lépések és egy kódpélda látható, amely bemutatja, hogyan kell DOCX metaadatait beolvasni Java használatával.

Lépések a metaadatok olvasásához a DOCX-ből Java használatával

  1. Állítsa be az IDE-t a GroupDocs.Metadata for Java használatára a DOCX metaadatok kibontásához
  2. Példányosítsa a Metadata osztályt, és adja át a DOCX fájl elérési útját argumentumként a konstruktornak
  3. Hozzon létre egy feltételt vagy szabályt az összes metaadat-tulajdonság ellenőrzéséhez
  4. Adjon meg egy predikátumot a Metadata.findProperties metódushoz
  5. Iteráljon a letöltött tulajdonságokon

A metaadatok kinyerése a DOCX-fájlokból számos lehetőséget kínál a fejlesztőknek, legyen szó a dokumentumok kategorizálásának automatizálásáról, a keresési szolgáltatások dokumentumtárakba való bevezetéséről vagy a szervezeti megfelelőség biztosításáról. A mellékelt utasítások követése kompatibilis az olyan népszerű operációs rendszerekkel, mint a Windows, a macOS és a Linux, feltéve, hogy a Java telepítve van. Ez a folyamat nem igényel további szoftvertelepítéseket a DOCX metaadatainak Java nyelven történő kivonásához. Az ajánlott könyvtár beállítása és a fájl elérési útjainak beállítása után a következő kód integrálása a projektekbe egyszerű és problémamentes lesz.

Kód a metaadatok olvasásához DOCX-ből Java használatával

import com.groupdocs.metadata.Metadata;
import com.groupdocs.metadata.core.FileFormat;
import com.groupdocs.metadata.core.IReadOnlyList;
import com.groupdocs.metadata.core.MetadataProperty;
import com.groupdocs.metadata.core.MetadataPropertyType;
import com.groupdocs.metadata.licensing.License;
import com.groupdocs.metadata.search.FallsIntoCategorySpecification;
import com.groupdocs.metadata.search.OfTypeSpecification;
import com.groupdocs.metadata.search.Specification;
import com.groupdocs.metadata.tagging.Tags;
import java.util.Calendar;
import java.util.Date;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ReadMetadataFromDOCXUsingJava {
public static void main(String[] args) {
// Set License to avoid the limitations of Metadata library
License license = new License();
license.setLicense("GroupDocs.Metadata.lic");
Metadata metadata = new Metadata("input.docx");
if (metadata.getFileFormat() != FileFormat.Unknown && !metadata.getDocumentInfo().isEncrypted()) {
System.out.println();
// Fetch all metadata properties that fall into a particular category
IReadOnlyList<MetadataProperty> properties = metadata.findProperties(new FallsIntoCategorySpecification(Tags.getContent()));
System.out.println("The metadata properties describing some characteristics of the file content: title, keywords, language, etc.");
for (MetadataProperty property : properties) {
System.out.println(String.format("Property name: %s, Property value: %s", property.getName(), property.getValue()));
}
// Fetch all properties having a specific type and value
int year = Calendar.getInstance().get(Calendar.YEAR);
properties = metadata.findProperties(new OfTypeSpecification(MetadataPropertyType.DateTime).and(new ReadMetadataFromDOCXUsingJava().new YearMatchSpecification(year)));
System.out.println("All datetime properties with the year value equal to the current year");
for (MetadataProperty property : properties) {
System.out.println(String.format("Property name: %s, Property value: %s", property.getName(), property.getValue()));
}
// Fetch all properties whose names match the specified regex
Pattern pattern = Pattern.compile("^author|company|(.+date.*)$", Pattern.CASE_INSENSITIVE);
properties = metadata.findProperties(new ReadMetadataFromDOCXUsingJava().new RegexSpecification(pattern));
System.out.println(String.format("All properties whose names match the following regex: %s", pattern.pattern()));
for (MetadataProperty property : properties) {
System.out.println(String.format("Property name: %s, Property value: %s", property.getName(), property.getValue()));
}
}
}
// Define your own specifications to filter metadata properties
public class YearMatchSpecification extends Specification {
public YearMatchSpecification(int year) {
setValue(year);
}
public final int getValue() {
return auto_Value;
}
private void setValue(int value) {
auto_Value = value;
}
private int auto_Value;
public boolean isSatisfiedBy(MetadataProperty candidate) {
Date date = candidate.getValue().toClass(Date.class);
if (date != null) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
return getValue() == calendar.get(Calendar.YEAR);
}
return false;
}
}
public class RegexSpecification extends Specification {
private Pattern pattern;
public RegexSpecification(Pattern pattern) {
this.pattern = pattern;
}
@Override
public boolean isSatisfiedBy(MetadataProperty metadataProperty) {
Matcher matcher = pattern.matcher(metadataProperty.getName());
return matcher.find();
}
}
}

Összefoglalva, a DOCX-fájlokból származó metaadatok beolvasásának képessége értékes betekintést nyújt a fejlesztőknek a dokumentumkönyvtárakba. Az ebben a cikkben részletezett lépések követésével és a mellékelt kódpélda használatával könnyedén lekérheti a DOCX metaadatait Java-ban, ami javítja a dokumentumok szervezését, elemzését és kezelését. Fedezze fel a különböző metaadat-tulajdonságokat, és mélyedjen el a könyvtárban, hogy javítsa dokumentumfeldolgozási képességeit Java-ban. Szép munka! Mostanra elsajátította a DOCX metaadatok kibontásának készségét Java használatával.

Egy korábbi megbeszélés során átfogó oktatóanyagot adtunk a dokumentum részleteinek Java segítségével történő eléréséről. A téma alaposabb megértéséhez javasoljuk, hogy tekintse meg részletes útmutatónkat a dokumentuminformációkat szerezzen be Java használatával.

 Magyar