Java 文档到PDF转换,为什么FileOutputStream生成损坏的PDF?
我尝试过将Word文档转换为PDFJava 文档到PDF转换,为什么FileOutputStream生成损坏的PDF?,java,file,fileoutputstream,Java,File,Fileoutputstream,我尝试过将Word文档转换为PDF import java.io.*; class DocToPdf { public static void main(String[] args) throws FileNotFoundException, IOException { FileInputStream fis = new FileInputStream("C:/Users/Samudra Ganguly/Desktop/ABC.docx");
import java.io.*;
class DocToPdf {
public static void main(String[] args) throws FileNotFoundException, IOException {
FileInputStream fis = new FileInputStream("C:/Users/Samudra Ganguly/Desktop/ABC.docx");
FileOutputStream fos = new FileOutputStream("C:/Users/Samudra Ganguly/Desktop/ABC.pdf");
int i;
while ((i = fis.read()) != -1) {
System.out.println(i);
fos.write(i);
fos.flush();
}
fis.close();
fos.close();
}
}
PDF已创建,但无法打开。有人能解释问题的原因和解决方法吗?
和PDF
文件的基本语法完全不同DOC
- Doc是word文档的二进制格式,由Microsoft开发 这是我的建议
- PDF是由Adobe开发的 这是我的建议
doc
文件中读取,然后尝试将其写入另一个扩展名为.pdf
的文件,这样只会创建一个损坏的文件。但是,如果您使用.dox
格式保存它,或者将它作为doc打开,那么您可以毫无疑问地阅读它
这就是您无法打开已创建(且已损坏)文件的原因。那么,有没有任何方法可以使用输入和输出流对其进行转换?逻辑上是可能的。如果您将文档语法映射为相同的pdf语法,然后开始转换,那么这将是可能的。