Leia metadados do PPTX usando Java

Na era digital de hoje, compreender os detalhes dos arquivos está se tornando muito importante. Os metadados, o armazenamento oculto de informações nos documentos digitais, contêm informações valiosas prontas para serem descobertas. Entre os diversos formatos de arquivo, PPTX se destaca como um formato de apresentação amplamente utilizado, repleto de metadados ricos, prontos para serem explorados. Este artigo se aventura no domínio da programação para desvendar as técnicas de como ler metadados de PPTX usando Java. Apresentamos abaixo as etapas junto com um código para ler metadados de PPTX usando Java.

Etapas para ler metadados de PPTX usando Java

  1. Configure seu ambiente de codificação para utilizar GroupDocs.Metadata for Java para obter informações de arquivos PPTX
  2. Crie uma instância da classe Metadata, passando o caminho do arquivo PPTX como argumento para seu construtor
  3. Defina diretrizes para verificar todos os detalhes dos metadados coletados
  4. Especifique uma condição para o método Metadata.findProperties
  5. Itere todas as propriedades que você coletou individualmente

Os metadados podem ser descritos como informações sobre outros dados, incluindo detalhes como autoria, datas de criação e modificação e muito mais. Para arquivos PPTX, os metadados revelam informações importantes sobre as apresentações, como origens, revisões e conteúdo estrutural. Para extrair metadados de arquivos PPTX, usamos Java, uma linguagem de programação versátil e poderosa, junto com GroupDocs.Metadata, uma biblioteca robusta para lidar com metadados em aplicativos Java. Esta biblioteca simplifica o acesso e o gerenciamento de metadados em vários formatos de arquivo, incluindo PPTX. O exemplo de código a seguir demonstra como extrair metadados de PPTX em Java.

Código para ler metadados de PPTX usando Java

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 ReadMetadataFromPPTXUsingJava {
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.pptx");
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 ReadMetadataFromPPTXUsingJava().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 ReadMetadataFromPPTXUsingJava().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();
}
}
}

Seguindo as instruções fornecidas, você pode obter metadados de PPTX em Java em sistemas amplamente utilizados como Windows, macOS e Linux, desde que o Java esteja instalado. Nenhuma instalação de software adicional é necessária. Em resumo, explorar os metadados ocultos nos arquivos PPTX usando Java é um empreendimento valioso. Ao aproveitar os recursos da biblioteca sugerida e a versatilidade do Java, os desenvolvedores podem revelar insights importantes ocultos nas apresentações digitais. Depois de configurar a biblioteca recomendada e modificar os caminhos dos arquivos de acordo, a integração do código a seguir em seus projetos deverá ocorrer sem problemas.

Durante nossa discussão anterior, fornecemos um guia detalhado sobre como extrair metadados de arquivos XLSX usando Java. Para uma compreensão mais completa deste tópico, recomendamos consultar nosso tutorial abrangente sobre como leia metadados do XLSX usando Java.

 Português