2

我创建了一些 java 代码,允许我打印 png、pdf、jpg 等,但我被困在 docx 文件和可能的其他文件类型上,

目前我正在使用下面的代码:

 if (extension.equals("txt")) {
            psInFormat = DocFlavor.INPUT_STREAM.AUTOSENSE;
        } else if (extension.equals("png")) {
            psInFormat = DocFlavor.INPUT_STREAM.PNG;
        } else if (extension.equals("gif")) {
            psInFormat = DocFlavor.INPUT_STREAM.GIF;
        } else if (extension.equals("jpg")) {
            psInFormat = DocFlavor.INPUT_STREAM.JPEG;
        } else if (extension.equals("pdf")) {
            psInFormat = DocFlavor.INPUT_STREAM.PDF;
        }

要确定文件类型是为该文档类型创建正确输入流的 ps,我可以修改此代码以包含 doc 文件吗?

4

2 回答 2

3

没有办法直接用 DocFlavor 做到这一点

看看 POI 项目

http://poi.apache.org/hwpf/index.html

于 2013-02-13T20:12:00.983 回答
2

比 POI 更好的答案是使用 docx4j

http://www.docx4java.org/trac/docx4j

这样做的原因是因为它具有访问 docx 包的不同部分所需的所有 API。

于 2013-02-13T20:16:23.147 回答