Čitanje metapodataka iz XLSX-a pomoću Jave

U suvremenom razvoju softvera, sposobnost izdvajanja i rukovanja metapodacima iz datoteka igra ključnu ulogu u raznim aplikacijama. Metapodaci, koji obuhvaćaju podatke poput autorstva, datuma stvaranja i svojstava dokumenta, nude vrijedan uvid u datoteke i olakšavaju učinkovito upravljanje datotekama. Konkretno za Excel datoteke u formatu .xlsx, programski pristup metapodacima pokazao se izrazito prednostima. Ovaj vodič zadubljuje se u proces kako čitati metapodatke iz XLSX-a pomoću Java programskog jezika. Ovdje ćete pronaći bitne korake zajedno s primjerom koda koji ilustrira kako čitati metapodatke XLSX-a pomoću Jave.

Koraci za čitanje metapodataka iz XLSX-a pomoću Jave

  1. Postavite svoj IDE da koristi GroupDocs.Metadata for Java za izdvajanje metapodataka iz XLSX datoteka
  2. Napravite instancu klase Metadata, prosljeđujući put datoteke XLSX datoteke kao argument njenom konstruktoru
  3. Stvorite pravilo ili uvjet za ispitivanje svih atributa metapodataka
  4. Definirajte uvjet za metodu Metadata.findProperties
  5. Prođite kroz dohvaćena svojstva

XLSX je široko korišten format datoteke za proračunske tablice, osobito povezan s Microsoft Excelom. Osim stvarnih podataka proračunske tablice, XLSX datoteke obuhvaćaju metapodatke koji detaljno opisuju različite aspekte datoteke. Ovi metapodaci uključuju informacije poput naslova dokumenta, autorstva, datuma stvaranja i izmjene i više. Programski pristup ovim metapodacima omogućuje programerima da automatiziraju zadatke, provode analizu ili obogaćuju korisnička iskustva unutar svojih aplikacija. Priložene upute kompatibilne su s popularnim operativnim sustavima kao što su Windows, macOS i Linux, pod pretpostavkom da imate instaliranu Javu. Za ekstrahiranje metapodataka XLSX-a u Javi nisu potrebne dodatne instalacije softvera. Nakon konfiguriranja preporučene biblioteke i prilagođavanja staza datoteka u skladu s tim, integracija sljedećeg koda u vaše projekte trebala bi teći glatko i bez ikakvih problema.

Kod za čitanje metapodataka iz XLSX-a pomoću Jave

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 ReadMetadataFromXLSXUsingJava {
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.xlsx");
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 ReadMetadataFromXLSXUsingJava().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 ReadMetadataFromXLSXUsingJava().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();
}
}
}

Zahvaljujući biblioteci metapodataka, izdvajanje uvida iz metapodataka XLSX datoteke pomoću Jave je jednostavno. Ova biblioteka omogućuje razvojnim programerima pristup ključnim informacijama pohranjenim u XLSX datotekama i njihovo jednostavno uključivanje u svoje aplikacije. Bilo da se radi o automatiziranom upravljanju dokumentima, izvođenju analize podataka ili poboljšanju korisničkog iskustva, programski pristup XLSX metapodacima predstavlja obilje mogućnosti za Java programere. Čestitamo! Uspješno ste savladali tehniku dobivanja metapodataka XLSX-a u Javi.

U ranijem razgovoru predstavili smo detaljan vodič o izdvajanju metapodataka iz DOCX datoteka pomoću Jave. Za dublje razumijevanje ove teme, predlažemo da pogledate naš opsežni vodič kako čitanje metapodataka iz DOCX-a pomoću Jave.

 Hrvatski