Java 将Jtable as表打印到文件中
我当时正在创建一个财务管理应用程序,所以我正在尝试打印总结的最后一份工作。 摘要页面由不同的表格组成,每个表格后面都有两个标签和文本字段。 所以如果有人能帮我了解一下这件事就太好了 我所要做的就是按原样将填充的Jtable打印到文件中 我不是Java方面的专家,我使用Netbeans编写gui 另外关于文件格式,我认为它必须使用.rtf来支持行等。希望从中创建rtf文件不会有困难 我对格式不是很特别。rtf我只想要一种可以支持列和表的格式 我想添加的另一件事是,我想从自定义模板创建收据。我想使用.rtf文件作为模板,并向该文件添加必要的值。但是在用java编辑了这个文件之后,它看起来并不好。如果有人能给我推荐一个合适的格式就更好了 编辑: 我成功地获得了一个现成的代码,可以将jtable打印成pdf格式,而且运行良好。代码如下Java 将Jtable as表打印到文件中,java,swing,netbeans,Java,Swing,Netbeans,我当时正在创建一个财务管理应用程序,所以我正在尝试打印总结的最后一份工作。 摘要页面由不同的表格组成,每个表格后面都有两个标签和文本字段。 所以如果有人能帮我了解一下这件事就太好了 我所要做的就是按原样将填充的Jtable打印到文件中 我不是Java方面的专家,我使用Netbeans编写gui 另外关于文件格式,我认为它必须使用.rtf来支持行等。希望从中创建rtf文件不会有困难 我对格式不是很特别。rtf我只想要一种可以支持列和表的格式 我想添加的另一件事是,我想从自定义模板创建收据。我想使用
文件=新文件(页面大小为A4);
试一试{
PdfWriter writer=PdfWriter.getInstance(文档,新文件输出流(“C:\Users\arun\Desktop\jTable.pdf”)
但是表格打印在靠近页面左侧的地方,我想留下一个左边距,同时还要打印每个表格列的标题
我尝试了document.setmargins()。但它不起作用。关于列的标题,我没有线索
您可以通过
JTable.getModel()
从JTable检索TableModel
,使用model.getRowCount()
、model.getColumnCount()
和model.getValueAt(行、列)迭代内容来提取数据
,如果不需要任何第三方工具,最后将值打印到普通的FileWriter
请参阅API文档中的、。我对rtf格式不是很特别。我只是希望能够向文件中添加列。关于提取数据,Jtable是使用数据库查询填充的。因此,我认为您的选项不会起作用。除了直接从数据库填充表外,您应该分离模型并查看一些.Al所以,您的问题是不清楚您是否希望以rtf格式编写文件?我并不特别了解如何使用rtf格式。我只希望表格按原样打印到文件中(我的意思是和表格本身一样).如果我们保留该程序,任何适合于蛹的格式都会更好simpler@Hello,在这种情况下,第1部分变得更简单,只需通过FileWriter或类似的工具将数据写入文本文件。不使用任何第三方工具就可以将表写入文件中吗?我只想保持它的简单性,我没有真正的定义y指向任何特定格式。当然,您可以使用标准java.io将JTable模型的内容转储到一个文件中。如果有必要,可以稍后提供一个片段。如果可能,请提供一个片段。请确保表本身作为表打印到文件中,并且只打印值。谢谢您的关注。我管理了to获得相当有效的代码
document.open();
PdfContentByte cb = writer.getDirectContent();
cb.saveState();
Graphics2D g2 = cb.createGraphicsShapes(500, 500);
Shape oldClip = g2.getClip();
g2.clipRect(0,0, 500, 500);
table.print(g2);
g2.setClip(oldClip);
g2.dispose();
cb.restoreState();
JOptionPane.showMessageDialog(null,"done","done",JOptionPane.INFORMATION_MESSAGE);
} catch (Exception e) {
System.err.println(e.getMessage());
}
document.close();