PDF फ़ाइलों के भीतर मेटाडेटा में दस्तावेज़ के बारे में महत्वपूर्ण विवरण शामिल होते हैं, जिसमें शीर्षक, लेखक, निर्माण और संशोधन तिथियां, कीवर्ड और अन्य प्रासंगिक डेटा शामिल हैं। इस मेटाडेटा को निकालने से दस्तावेज़ प्रबंधन प्रणालियों से लेकर डेटा विश्लेषण और स्वचालन कार्यों तक कई तरह के अनुप्रयोगों के लिए महत्वपूर्ण लाभ मिल सकते हैं। यह लेख Java का उपयोग करके PDF से मेटाडेटा पढ़ने की प्रक्रिया का पता लगाएगा। यहाँ प्रक्रिया का चरण-दर-चरण विवरण दिया गया है, साथ ही एक उदाहरण कोड भी दिया गया है जो यह बताता है कि Java का उपयोग करके PDF से मेटाडेटा कैसे पढ़ा जाए।
जावा का उपयोग करके पीडीएफ से मेटाडेटा पढ़ने के चरण
- PDF फ़ाइलों से मेटाडेटा निकालने के लिए GroupDocs.Metadata for Java का उपयोग करने के लिए अपना IDE सेट करें
- पीडीएफ फाइल पथ को इसके कन्स्ट्रक्टर के लिए तर्क के रूप में उपयोग करके Metadata ऑब्जेक्ट को इंस्टैंसिएट करें
- एकत्रित मेटाडेटा जानकारी की जाँच करने के लिए नियम निर्धारित करें
- Metadata.findProperties विधि को नियोजित करने के लिए एक शर्त प्रदान करें
- प्रत्येक संपत्ति को व्यक्तिगत रूप से दोहराएँ
जावा का उपयोग करके पीडीएफ फाइलों से मेटाडेटा निकालने से डेवलपर्स को शीर्षक, लेखकत्व, निर्माण और संशोधन तिथियों और कीवर्ड जैसे दस्तावेज़ गुणों के बारे में मूल्यवान जानकारी मिलती है। यह डेटा दस्तावेज़ प्रबंधन प्रणालियों, डेटा विश्लेषण और स्वचालित वर्कफ़्लो में महत्वपूर्ण भूमिका निभाता है। जब तक जावा इंस्टॉल है, आप विंडोज, मैकओएस या लिनक्स पर दिए गए निर्देशों का पालन कर सकते हैं। जावा में पीडीएफ का मेटाडेटा निकालने के लिए किसी अतिरिक्त सॉफ़्टवेयर इंस्टॉलेशन की आवश्यकता नहीं है। अनुशंसित लाइब्रेरी को कॉन्फ़िगर करने और आवश्यकतानुसार फ़ाइल पथों को समायोजित करने के बाद, आपके प्रोजेक्ट में निम्नलिखित कोड को एकीकृत करना बिना किसी जटिलता या कठिनाई के सीधा होना चाहिए।
जावा का उपयोग करके पीडीएफ से मेटाडेटा पढ़ने के लिए कोड
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 ReadMetadataFromPDFUsingJava { | |
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.pdf"); | |
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 ReadMetadataFromPDFUsingJava().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 ReadMetadataFromPDFUsingJava().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(); | |
} | |
} | |
} |
संक्षेप में, इस लेख में Java में PDF का मेटाडेटा प्राप्त करने के बारे में विस्तृत मार्गदर्शन दिया गया है। मेटाडेटा लाइब्रेरी के साथ, डेवलपर्स PDF दस्तावेज़ों से दस्तावेज़ शीर्षक, लेखक विवरण, निर्माण और संशोधन तिथियाँ और कीवर्ड जैसी महत्वपूर्ण जानकारी प्रभावी रूप से प्राप्त कर सकते हैं। Java में मेटाडेटा निष्कर्षण तकनीकों में महारत हासिल करने से डेवलपर्स दस्तावेज़ प्रबंधन, डेटा विश्लेषण और स्वचालन के लिए मज़बूत एप्लिकेशन बना सकते हैं। हम आपको Java अनुप्रयोगों में मेटाडेटा निष्कर्षण की क्षमताओं को और बढ़ाने के लिए विभिन्न PDF फ़ाइलों के साथ प्रयोग करने और अतिरिक्त मेटाडेटा गुणों का पता लगाने के लिए प्रोत्साहित करते हैं।
पिछली बातचीत में, हमने जावा का उपयोग करके PPTX फ़ाइलों से मेटाडेटा निकालने पर एक विस्तृत ट्यूटोरियल प्रस्तुत किया था। इस विषय की गहन समझ के लिए, हम जावा का उपयोग करके PPTX से मेटाडेटा पढ़ें पर हमारे व्यापक गाइड से परामर्श करने का सुझाव देते हैं।