به عنوان یک توسعه دهنده برنامه جاوا که برنامه های پردازش اسناد را ایجاد می کند ، ممکن است شما علاقه مند باشید که توانایی خواندن اسناد Word را در برنامه جاوا خود و استخراج متن از این اسناد به صورت برنامه ای ارائه دهید. شما می توانید از قدرت API Docx4J برای خواندن پرونده های Docx استفاده کنید و متن را از این پرونده ها از برنامه جاوا خود استخراج کنید. در این مقاله ، ما قصد داریم نحوه استفاده از Docx4J API را برای دستیابی به هدف خود از کار با پرونده های DOCX برای استخراج متن نشان دهیم.
چگونه متن را از اسناد کلمه در جاوا بخوانیم و استخراج کنیم؟
قبل از شروع نوشتن کد برای ایجاد یک فایل DOCX با استفاده از API Docx4J ، باید API Docx4J را در محیط توسعه خود تنظیم کنید. اگر قبلاً API DOCX4J را نصب و پیکربندی نکرده اید ، می توانید نگاهی به مقاله ما در مورد نحوه نصب docx4j api داشته باشید.
استخراج متن از سند Word در جاوا
در این مرحله ، فرض می کنیم که شما محیط توسعه خود را تنظیم کرده اید و آماده استفاده از API DOCX4J برای استخراج متن از اسناد Word هستید. برای این منظور می توان از کد نمونه زیر استفاده کرد. می توانید مستقیماً آن را در روش اصلی برنامه جاوا مبتنی بر کنسول خود کپی کرده و آن را اجرا کنید.
// Load document
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new File("FileFormat.docx"));
// Load main document part
MainDocumentPart mainDocumentPart = wordMLPackage.getMainDocumentPart();
// Extract nodes
String textNodesXPath = "//w:t";
List<Object> textNodes= mainDocumentPart.getJAXBNodesViaXPath(textNodesXPath, true);
// Print text
for (Object obj : textNodes) {
Text text = (Text) ((JAXBElement) obj).getValue();
String textValue = text.getValue();
System.out.println(textValue);
}
بیایید نگاهی به نحوه عملکرد این کد بیندازیم. سند کلمه با استفاده از wordprocesingmlpackage بارگذاری می شود و بیشتر با استفاده از کلاس mainDocumentPart از API docx4j پردازش می شود. پس از بارگیری سند ، لیست گره های متنی از شیء MainDocumentPart حاوی سند واقعی بدست می آید. سپس هر گره متن با عبور از آن به عنوان jaxbelement شیء خوانده می شود.
نتیجه گیری
کار با اسناد Word از درون برنامه جاوا شما با API Docx4J آسان است. API به شما کمک می کند تا بدون وارد شدن به جزئیات داخلی فرمت فایل اساسی ، عملکرد پردازش اسناد را به برنامه های جاوا خود اضافه کنید. برای مثال های بیشتر از کار با API Docx4J ، این وبلاگ را دنبال کنید.