1. kamerák
  2. Car Audio & Electronics
  3. Home Audio
  4. Personal Audio
  5. TV-k
  6. Okos otthon
  >> Elektronikai Technológia Online >  >> Okos otthon >> Okos élet

PDF-fájlok olvasása Java nyelven

Nem nehéz elolvasni a PDF-fájlokat Java nyelven könnyen elérhető könyvtárak segítségével. A PDF-fájlok olvasása lehetővé teszi, hogy olyan Java-programokat írjon, amelyek képesek feldolgozni a fájlok szövegét. A PDF-fájlok olvasásának egyik lehetősége az ingyenes, nyílt forráskódú PDFBox könyvtár, amely az Apache-tól érhető el. Az Eclipse Java fejlesztői platform megkönnyíti ezt a munkát, és kezeli a letöltendő könyvtárakat. Ezen Java könyvtárak használatához ismernie kell a Java programozást.

A szükséges könyvtárak összegyűjtése

1. lépés

Töltse le a Java JDK-t a Sun webhelyéről. Ez egy végrehajtható fájl, amelyet futtatásával telepíthet a rendszerére. Verziók elérhetők Windows, Mac és Linux rendszerre. Kattintson a piros "Letöltés" gombra. Mentse el a „jdk-6uxx-windows-xxx.exe” nevű fájlt, amikor a rendszer kéri. Mentse el ezt a fájlt, majd kattintson rá duplán a Java telepítő elindításához.

2. lépés

Töltse le az Eclipse fejlesztőrendszert, és csomagolja ki egy legfelső szintű könyvtárba. Válassza az „Eclipse IDE for Java Developers” lehetőséget. Ezzel elindul az „eclipse-java-galileo-SR2-win32.zip” letöltése. A letöltés befejezése után kattintson duplán a fájlra a kicsomagolásához. Válassza ki a "C:" gyökérkönyvtár helyét az Eclipse kicsomagolásához.

3. lépés

Az Eclipse elindításához kattintson duplán az „eclipse.exe” fájlra az eclipse zip fájl kicsomagolásával létrehozott könyvtárban. Az Eclipse rendszerben hozzon létre egy "PrintPdf" nevű projektet. Válassza a "Fájl", majd az "Új", majd a "Java projekt" lehetőséget. A megjelenő párbeszédablakban írja be a projekt nevét "PrintPdf". Győződjön meg arról, hogy be van jelölve a „Külön mappák létrehozása a forrás- és osztályfájlokhoz” választógomb. Kattintson a „Befejezés” gombra.

4. lépés

Hozzon létre egy "lib" mappát a "PrintPdf" projektben. Kattintson a jobb gombbal a "PrintPdf" projektre, és válassza az "Új", majd a "Mappa" lehetőséget. Írja be a „lib” nevet, és kattintson a „Befejezés” gombra.

5. lépés

Töltse le az Apache "PDFBox.jar" fájlt az Apache webhelyről, és másolja be az imént létrehozott lib könyvtárba. Ugyanazon a weboldalon töltse le a "fontbox-nn.jar" és a "jempbox-nn.jar" fájlt. Ha rákattint az adott jar fájlra, minden esetben egy olyan oldalra jut, ahol kiválaszthat egyet a több szerver közül, amelyek biztosítják ezt a fájlt. Válassza ki mindegyiket, és minden jar fájl letöltődik. Másoljon minden jar fájlt az imént létrehozott lib könyvtárba.

6. lépés

Ugyanilyen módon töltse le az Apache log4j.jar csomagot, és másolja be a log4j.jar fájlt a könyvtárba. Az Apache PDFBox könyvtár ezt az Apache naplózási könyvtárat használja, ezért ennek a fájlnak jelen kell lennie.

7. lépés

Töltse le az Apache Commons Discovery csomagot zip fájlként. Kattintson duplán a zip fájlra, válassza ki a „commons-discovery-nn.jar” fájlt, és csomagolja ki a lib könyvtárba.

8. lépés

Az Eclipse programban kattintson a "lib" könyvtárra, és nyomja meg az "F5" billentyűt. Győződjön meg arról, hogy az összes hozzáadott jar fájl megjelenik.

9. lépés

Kattintson a jobb gombbal a PrintPDF projektre, és válassza a "Tulajdonságok" lehetőséget. Válassza a "Java Build Path" lehetőséget, majd válassza a "Könyvtárak" lapot. Kattintson a "Jars hozzáadása" gombra, lépjen az imént létrehozott lib könyvtárba, és adja hozzá a "commons-logging-nn.jar" "fontbox-nn.jar", "jempbox-nn.jar", "log4j-nn.jar" fájlokat. " és "pdfbox-nn.jar." Kattintson az „OK” gombra.

Írja be a kódot a PDF-ek olvasásához

1. lépés

Kattintson a jobb gombbal a "PrintPDF" projekt "src" mappájára, és válassza az "Új" és a "Csomag" lehetőséget. Hozzon létre egy csomagot bármilyen értelmes név használatával. Például nevezze el a csomagot „com.pdf.util”. Kattintson a „Befejezés” gombra.

2. lépés

Kattintson a jobb gombbal az imént létrehozott csomag nevére, és válassza az "Új", majd az "Osztály" lehetőséget. Hozzon létre egy „PDFTextParser” nevű osztályt. Feltétlenül kattintson a "public static void main..." jelölőnégyzetre, hogy a rendszer létrehozzon egy "main" metódust.

3. lépés

Szerkessze a "main" metódust a "PDFTextParser" osztályban, hogy az tartalmazza a következő kódot:

public static void main(String args[]){ PDFTextParser pdf =new PDFTextParser("data/javaPDF.pdf") GO //eredmények nyomtatása System.out.println(pdf.getParsedText()) GO }

Vegye figyelembe, hogy a kinyomtatni kívánt fájlt a PDFTextParser ("data/JavaPDF.pdf") konstruktorában írja ki. Ugyanilyen könnyen lehet parancssori argumentum is:

PDFTextParser pdf = new PDFTextParser(argv[0])

MENJ

vagy grafikus felhasználói felületről van kiválasztva.

Létrehozza a PDFTextParser osztály egy példányát, majd meghívja a "getParsedText" metódust.

4. lépés

Illessze be a következő kódot közvetlenül az Ön számára létrehozott "public class PDFTextParser" felső osztályú sor alá.

private PDFParser elemző =null GO

// Extract text from PDF Document
public PDFTextParser(String fileName) {
 File file = new File(fileName)

GO if (!file.isFile()) { System.err.println("Fájl " + fájlnév + " nem létezik.") GO } //PDF-elemző példányának beállítása try { parser =new PDFParser(new FileInputStream( fájl)) GO } catch (IOException e) { System.err.println("Nem lehet megnyitni a PDF-elemzőt. " + e.getMessage()) GO } } //-------------- ----------------- public String getParsedText() { PDDocument pdDoc =null GO COSDocument cosDoc =null;
String parsedText =null; MENJ

try { 
 PDFTextStripper pdfStripper = new PDFTextStripper()

GO parser.parse() GO cosDoc =parser.getDocument() GO pdDoc =new PDDocument(cosDoc) GO

//get list of all pages
 List<PDPage> list = pdDoc.getDocumentCatalog().getAllPages()

MENJ

//note that you can print out any pages you want
 //by choosing different values of the start and end page
 pdfStripper.setStartPage(1); //1-based
 int length = list.size(); //total number of pages
 pdfStripper.setEndPage(length); //last page

 //get the text for the pages selected
 parsedText = pdfStripper.getText(pdDoc)

GO } catch (IOException e) { System.err .println("Kivétel történt a PDF-dokumentum elemzése során." + e.getMessage()) GO } végül { try { if (cosDoc !=null) cosDoc.close() GO if (pdDoc !=null) pdDoc.close() GO } catch (IOException e) { e.printStackTrace() GO } }
return parsedText GO }

5. lépés

Futtassa a programot. Kattintson a jobb gombbal a PDFTextParser osztályra, majd kattintson a "Futtatás másként", majd a "Java program" elemre. A programnak futnia kell, és ki kell nyomtatnia a kódban megadott PDF-fájl szöveges tartalmát.

Log4j indítási hibaüzenet letiltása

1. lépés

Hozzon létre egy konfigurációs fájlt a Java naplózási rendszer log4j hibaüzenetének letiltásához, amely akkor jön létre, amikor a rendszer nem talál konfigurációs fájlt az indításkor. Kattintson a jobb gombbal a PrintPDF projekt "src" mappájára, és válassza az "Új", majd a "Fájl" lehetőséget. Nevezze el a fájlt „log4j.properties”-nek. Az Eclipse egy üres képernyőt jelenít meg az új fájl számára.

2. lépés

Illessze be a következő sorokat a „log4j.properties” fájlt képviselő üres képernyőre.

Állítsa be a gyökérnaplózó szintjét DEBUG-ra, az egyetlen függelékét pedig A1-re. log4j.rootLogger=WARN, A1

Az

A1 ConsoleAppenderként van beállítva. log4j.appender.A1=org.apache.log4j.ConsoleAppender

A1 a PatternLayoutot használja. log4j.appender.A1.layout=org.apache.log4j.PatternLayout log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

3. lépés

Mentse el a "log4j.properties" fájlt. Ennek a fájlnak a legfelső szintű "src" könyvtárában való jelenléte elnyomja a log4j indítási üzenetét és a triviális naplózási üzeneteket. A log4j rendszer csak a tényleges hibákat nyomtatja ki.

Tipp

Számos kereskedelmi csomag is létezik, amelyek segítségével szöveget bonthat ki PDF-fájlokból, de ezek nem olcsók.


  1. Hogyan olvassuk a PDF fájlt egy mobiltelefon
  2. Hogyan olvassuk az AT & T File
  3. Hogyan olvassuk a PDF fájlt egy mobiltelefon
  4. Hogyan lehet PDF fájlokat az iPod
  5. Jar fájl telepítése