簡體   English   中英

從UTF-8格式的pdf文件中讀取並將其寫入cp1252格式的寫入器中

[英]Reading from UTF-8 formatted pdf file and writing it to a writer in cp1252 format

我正在嘗試使用文件流從pdf文件讀取數據,我想以cp1252編碼格式將其寫入寫入器。 以下是代碼:

byte buf[] = new byte[8192];
InputStream is = new FileInputStream(f); 
ByteArrayOutputStream oos = new ByteArrayOutputStream(); 
int c=0; 
while ((c = is.read(buf)) != -1) { 
   oos.write(buf, 0, c); 
}
byte out[] = oos.toByteArray();
String str = oos.toString(out,"UTF-8");
char[] ch = str.toCharArray();
writer.write(ch);
is.close(); 
oos.close();

但是輸出錯誤,因為文本不可讀(未正確轉換)。 我該如何解決 ?

嘗試從PDF文件讀取時,您可能會遇到錯誤。 嘗試使用PDFBox從PDF文件中提取文本。 這可能是最好的方法之一。 擁有所需的文本后,即可使用cp1252編碼進行保存。

您可以從此處查看使用PDFBox提取文本的示例

關於轉換為cp1252,如果您使用的是Windows計算機,則默認編碼為cp1252。 所以只是想保存文本應該有希望將其保存在CP1252編碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM