如何从java打印excel文件?

如何从java打印excel文件?,java,printing,Java,Printing,关于社区的第一个问题 让我解释一下这个问题 我有一个用户界面,可以创建excel文件。我想在用户界面添加一个打印文档按钮。此按钮应允许用户打印该excel文档。因此,我需要的是一种调用该文件的windows打印对话框的方法,以便用户可以打印该文件 我已经读过了,但是我找不到告诉打印对话框打印什么文件的方法 提前谢谢 我认为Apache POI对你来说是最好的。代码语法如下 POIFSFileSystem filesystem = new POIFSFileSystem(new Fil

关于社区的第一个问题

让我解释一下这个问题

我有一个用户界面,可以创建excel文件。我想在用户界面添加一个打印文档按钮。此按钮应允许用户打印该excel文档。因此,我需要的是一种调用该文件的windows打印对话框的方法,以便用户可以打印该文件

我已经读过了,但是我找不到告诉打印对话框打印什么文件的方法


提前谢谢

我认为Apache POI对你来说是最好的。代码语法如下

      POIFSFileSystem filesystem = new POIFSFileSystem(new FileInputStream(file));
        HSSFWorkbook wrkbook = new HSSFWorkbook(filesystem );
        HSSFSheet sheet = wrkbook.getSheetAt(0);
        HSSFRow row;
        HSSFCell cell;
//Keep on doing your manipulation.

更多信息。

我认为您所问的是操作系统特有的问题。您希望应用程序触发Excel以打开文件并打印它。所以,您必须问问自己:在Windows中有没有一种方法可以从命令行打印Excel文档?另一种方法是在应用程序中加载Excel文件,然后从那里打印。有几个API,我认为POI是一个,JExcelAPI是另一个。谢谢你的输入。想法是打开打印对话框,而不打开文件。正如您所建议的,从命令行打印将是一个不错的选择。不幸的是,我找不到.xls文件的打印命令。即使从资源管理器在Windows中打印某些内容,它也会打开Excel应用程序,执行“打印”对话框,然后将其关闭。我想你要么通过一些可以读取Excel的库打印自己,要么通过CLI找到调用它的方法,要么使用JNI调用一些本机Windows API来完成。我想不打开文档就无法打印文档。谢谢你的建议!归根结底,“打印”对话框实际上并不打印任何内容,它是一个配置打印位置和方式的对话框。应用程序仍然负责进行实际打印所需的任何调用。不管你使用哪种语言,它都是这样工作的。Java增加了一些额外的复杂性,因为它们必须以非常平台中立的方式进行操作。您最好查看库,以便打开Excel文件并打印它@Nik在下面发布了一些关于如何读取文件的代码,您只需将其发送到打印机即可。我使用此库创建了需要打印的文档。但据我所知,它不允许打印文档。好的,你们需要用CL打印吗?