導航:首頁 > 文檔加密 > javapdf轉txt

javapdf轉txt

發布時間:2024-12-30 12:23:44

A. java 怎麼把pdf轉成word

可以用PDFBox
至於生成word,用POI;HTML的話,自己解析就可以了
PDFBox是一個開源的可以操作PDF文檔的Java PDF類庫。它可以創建一個新PDF文檔,操作現有PDF文檔並提取文檔中的內容。
它具有以下特性:
1.將一個PDF文檔轉換輸出為一個文本文件。
2.可以從文本文件創建一個PDF文檔。
3.加密/解密PDF文檔。
4.向已有PDF文檔中追加內容。
5.可以從PDF文檔生成一張圖片。
6.可以與Jakarta Lucene搜索引擎的整合

B. 如何用java將pdf文件轉換成word文件

需要用到插件jacob,自己去下載吧。
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.ComThread;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;
public class D2P {
private ActiveXComponent wordCom = null;

private Object wordDoc = null;

private final Variant False = new Variant(false);

private final Variant True = new Variant(true);

/** *//** *//** *//**
* 打開word文檔
*
* @param filePath
* word文檔
* @return 返回word文檔對象
*/
public boolean openWord(String filePath) {
//建立ActiveX部件
wordCom = new ActiveXComponent("Word.Application");

try {
//返回wrdCom.Documents的Dispatch
Dispatch wrdDocs = wordCom.getProperty("Documents").toDispatch();
//調用wrdCom.Documents.Open方法打開指定的word文檔,返回wordDoc
wordDoc = Dispatch.invoke(wrdDocs, "Open", Dispatch.Method,
new Object[] { filePath }, new int[1]).toDispatch();
return true;
} catch (Exception ex) {
ex.printStackTrace();
}
return false;
}

/** *//** *//** *//**
* 關閉word文檔
*/
public void closeWord() {
//關閉word文件
wordCom.invoke("Quit", new Variant[] {});
}

/** *//** *//** *//**
* * 將word文檔列印為PS文件後,使用Distiller將PS文件轉換為PDF文件 *
*
* @param sourceFilePath
* 源文件路徑 *
* @param destinPSFilePath
* 首先生成的PS文件路徑 *
* @param destinPDFFilePath
* 生成PDF文件路徑
*/
public void docToPDF(String sourceFilePath, String destinPSFilePath,
String destinPDFFilePath) {
if (!openWord(sourceFilePath)) {
closeWord();
return;
}
//建立Adobe Distiller的com對象
ActiveXComponent distiller = new ActiveXComponent(
"PDFDistiller.PDFDistiller.1");
try {
//設置當前使用的列印機,我的Adobe Distiller列印機名字為"Adobe PDF"
wordCom.setProperty("ActivePrinter", new Variant("MS Publisher Color Printer"));
//設置printout的參數,將word文檔列印為postscript文檔。目前只使用了前5個參數,如果要使用更多的話可以參考MSDN的office開發相關api
//是否在後台運行
Variant Background = False;
//是否追加列印
Variant Append = False;
//列印所有文檔
int wdPrintAllDocument = 0;
Variant Range = new Variant(wdPrintAllDocument);
//輸出的postscript文件的路徑
Variant OutputFileName = new Variant(destinPSFilePath);

Dispatch.callN((Dispatch) wordDoc, "PrintOut", new Variant[] {
Background, Append, Range, OutputFileName });
System.out.println("由word文檔列印為ps文檔成功!");
//調用Distiller對象的FileToPDF方法所用的參數,詳細內容參考Distiller Api手冊
//作為輸入的ps文檔路徑
Variant inputPostScriptFilePath = new Variant(destinPSFilePath);
//作為輸出的pdf文檔的路徑
Variant outputPDFFilePath = new Variant(destinPDFFilePath);
//定義FileToPDF方法要使用adobe pdf設置文件的路徑,在這里沒有賦值表示並不使用pdf配置文件
Variant PDFOption = new Variant("");
//調用FileToPDF方法將ps文檔轉換為pdf文檔
Dispatch.callN(distiller, "FileToPDF", new Variant[] {
inputPostScriptFilePath, outputPDFFilePath, PDFOption });
System.out.println("由ps文檔轉換為pdf文檔成功!");
} catch (Exception ex) {
ex.printStackTrace();
} finally {
closeWord();
wordCom=null;
//釋放在程序線程中引用的其它com,比如Adobe PDFDistiller
ComThread.Release();
}
}

public static void main(String[] argv) {
D2P d2p = new D2P();
d2p.docToPDF("d:/12.doc", "d:/1p.ps", "d:/1p.pdf");
//這里是你建一個叫12.doc的word文檔,生成的文檔將在D盤下
//1p.ps和1p.pdf(這是我們要的)
}
}

C. java讀取pdf文件的時候出現異常

當時想把pdf中的文字讀取成txt文件,方便我的手機閱讀,寫了以下代碼,解決了這個小問題

所需要的包:PDFBox-0.7.3.zip 解壓文件夾下:external下的全部,lib文件下的PDFBox-0.7.3.jar

注意:只能讀取文本格式的pdf,如果pdf為圖片格式的,本程序不能使用!

程序介紹:本程序將文本格式pdf中的文字讀取出來,存入與pdf文件同文件名的TXT文本文檔。

支持中文,但是在某些文字上會出現亂碼.

package com.small;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.net.MalformedURLException;
import java.net.URL;
import org.pdfbox.pdmodel.PDDocument;
import org.pdfbox.util.PDFTextStripper;

public class Pdfreader {
public void readFdf(String file) throws Exception {
// 是否排序
boolean sort = false;
// pdf文件名
String pdfFile = file;
// 輸入文本文件名稱
String textFile = null;
// 編碼方式
String encoding = "GB2312";
// 開始提取頁數
int startPage = 1;
// 結束提取頁數
int endPage = Integer.MAX_VALUE;
// 文件輸入流,生成文本文件
Writer output = null;
// 內存中存儲的PDF Document
PDDocument document = null;
try {
try {
// 首先當作一個URL來裝載文件,如果得到異常再從本地文件系統//去裝載文件
URL url = new URL(pdfFile); //注意參數已不是以前版本中的URL.而是File。
document = PDDocument.load(pdfFile);
// 獲取PDF的文件名
String fileName = url.getFile();
// 以原來PDF的名稱來命名新產生的txt文件
if (fileName.length() > 4) {
File outputFile = new File(fileName.substring(0, fileName
.length() - 4)
+ ".txt");
textFile = outputFile.getName();
}
} catch (MalformedURLException e) {
// 如果作為URL裝載得到異常則從文件系統裝載 //注意參數已不是以前版本中的URL.而是File。
document = PDDocument.load(pdfFile);
if (pdfFile.length() > 4) { textFile = pdfFile.substring(0, pdfFile.length() - 4)
+ ".txt";
}
}
// 文件輸入流,寫入文件倒textFile
output = new OutputStreamWriter(new FileOutputStream(textFile),
encoding);
// PDFTextStripper來提取文本
PDFTextStripper stripper = null;
stripper = new PDFTextStripper();
// 設置是否排序
stripper.setSortByPosition(sort);
// 設置起始頁
stripper.setStartPage(startPage);
// 設置結束頁
System.out.print(stripper.getText(document));
stripper.setEndPage(endPage);
// 調用PDFTextStripper的writeText提取並輸出文本
stripper.writeText(document, output);
} finally {
if (output != null) {
// 關閉輸出流
output.close();
}
if (document != null) {
// 關閉PDF Document
document.close();
}
}
} /**
* @param args
*/
public static void main(String[] args) {
Pdfreader pdfReader = new Pdfreader();
try {
// 讀取pdf文件
pdfReader.readFdf("d:\\2\\D.pdf");
} catch (Exception e) {
e.printStackTrace();
}
}

}
http://hi..com/websays/blog/item/bb5a9daa950dc1baca130c7f.html

D. java核心技術書pdf的能轉換成txt不

pdf是照片直接壓在一起形成的,也就是打包的圖片,所以是無法直接轉換為txt的,你要是不怕麻煩的話,可以用office 2003 完整版裡面的OCR識別器來識別吧

要將它們變成txt格式的文本。需要以下必要軟體。
1.office 2003 完整版。記住,必須是完整版的,大約500M左右。(因為只有它才有虛擬列印機和OCR識別功能。)
2.pdf\pdg閱讀軟體。
3.虛擬列印機軟體。
4.一本pdf或pdg電子書。
現在,我們開始轉變。
1.安裝pdf或pdg閱讀軟體。(如果你下載的是pdg電子書,那麼你就安裝pdg閱讀軟體。如果是pdf格式的電子書,你就安裝pdf閱讀軟體。總之,你要將你的電子書用相關的軟體打開。)
2.安裝,office 2003完整版。安裝office 2003完整版時,電腦會問你是否重啟計算機,如果是你的私人計算機,那麼你就重啟你的計算機,安裝上office 2003完整版也不錯。但如果你是在網吧里上網的話,你就不重啟電腦,因為網吧里一般都安裝有還原精靈。一重啟,電腦上的數據就沒有了。所以這里你不一定要重啟,但是你必須安裝(虛擬列印機)這個軟體。一定要安裝哦!
3.用你的閱讀器打開你下載的電子書。
4.打開電子書後,點擊——文件——列印(電腦將用你的虛擬列印機列印你下載的電子書,列印完後,它會自動生成一個文檔。)
5.在這個自動生成的文檔里邊,你點擊——工具——發送到word文檔。在對話框里完成相關的設置。電腦將用office2003的OCR功能將你列印的電子書的字自動生成word文檔。
6.在這個word文檔裡面,你可以將裡面的內容修改、刪除、復制,就可以將你下載的電子書變成txt純文本了。
7.用office 2003的OCR功能識別的字,有一定的亂碼,這是一定的,你只需將亂碼的刪掉,錯誤的改改,就大功告成了。
8.在這里,我們主要運用的是office 2003的虛擬列印機和它的OCR識別功能。(再次提醒,office 2003必須是完整版的。)這兒有一個比較好的pdg閱讀器。叫什麼老馬的,到網上搜搜就應該能找到,比那個超星閱讀器強多了。那個超星限制太多,不好。pdf內格式的閱讀軟體比較多,很好找的。
9.在虛擬列印機列印和OCR識別功能的時候,裡面的設置你自己好好看看,應該沒什麼問題的。

閱讀全文

與javapdf轉txt相關的資料

熱點內容
網吧總伺服器叫什麼 瀏覽:920
多個演算法解決同一個問題 瀏覽:453
小車解壓後我的購車發票呢 瀏覽:975
做app開發用什麼雲伺服器 瀏覽:175
linux網卡子介面 瀏覽:983
21歲職高畢業學程序員怎麼學 瀏覽:319
vs如何對單個文件編譯 瀏覽:4
為什麼有的電腦不能安裝python 瀏覽:73
金蝶迷你版加密狗檢測到過期 瀏覽:184
硬體描述語言編譯結果 瀏覽:655
程序員逆天改命 瀏覽:19
金斗雲伺服器 瀏覽:445
港口工程pdf 瀏覽:770
程序設計語言pdf 瀏覽:432
蔬菜價格上漲演算法 瀏覽:221
nfs是什麼伺服器 瀏覽:823
單榀框架柱子要加密嗎 瀏覽:350
當標識符在該條件編譯結構前 瀏覽:584
遼寧開票伺服器地址雲空間 瀏覽:376
月亮播放器app現在叫什麼 瀏覽:986