打印指定来页号的具体文本内容自*/
private void drawCurrentPageText(Graphics2D g2, PageFormat pf, int page) {
String s = getDrawText(printStr)[page]; //获取当前页的待打印文本内容
//获取默认字体及相应的尺寸
FontRenderContext context = g2.getFontRenderContext();
Font f = area.getFont();
String drawText;
float ascent = 16; //给定字符点阵
int k, i = f.getSize(), lines = 0;
while(s.length() > 0 && lines < 54) //每页限定在54行以内
{
㈡ java实现 excel 打印 问题
不用这么麻烦的
直接用TABLE就行了,就是在jsP头文件要稍微改一下,我都是这么弄的
我给你看个我做的粗糙点,大致意思有了
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" import="java.util.Vector" errorPage="" %>
<%
response.setContentType("application/vnd.ms-excel;charset=gb2312");
response.setHeader("Content-disposition","inline; filename=ywl.xls");
%>
<html>
<head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>导出EXCEL表格</title>
</head>
<body>
<h1>业务所有数据</h1>
<%Connection con= null;
Statement stmt= null;
ResultSet rs = null;
ResultSet rs1 = null;
ResultSet rs2 = null;
ResultSet rs3 = null;
ResultSet rs4 = null;
try{
Class.forName("com.mysql.jdbc.Driver");
String url ="jdbc:mysql://localhost:3306/xnwxt?user=root&password=87601401&useUnicode=true&characterEncoding=GB2312";
con =DriverManager.getConnection(url);
stmt=con.createStatement();
String select3="select * from xnwxt order by id desc ";
////////////////////////////////////////////////
rs3=stmt.executeQuery(select3);
out.print("<table align=center >");
out.print("<tr>");
out.print("<td width=80><strong><div align=center >");
out.print( "上报时间") ;
out.print("</div></strong></握戚数td>");
out.print("<td width=80><strong><仔李div align=center >");
out.print( "上报渠道") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><段首div align=center >");
out.print( "上报人") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><div align=center >");
out.print( "号码1") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><div align=center >");
out.print( "姓名") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><div align=center >");
out.print( "号码2") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><div align=center >");
out.print( " 类型") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><div align=center >");
out.print( " 名称") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><div align=center >");
out.print( " 编号") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><div align=center >");
out.print( " 包年") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><div align=center >");
out.print( " 处理") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><div align=center >");
out.print( " 结算") ;
out.print("</div></strong></td>");
out.print("<td width=80><strong><div align=center >");
out.print( "备注") ;
out.print("</div></strong></td>");
out.print("</tr>");
while(rs3.next()){
out.print("<tr align=center>");
out.print("<td width=80>");out.print(new String(rs3.getString("time").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("channel").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("truename").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("mobile").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("guest").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("idcard").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("type").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("group0").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("groupid").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("bao").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("treatment").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("gratuity").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("<td width=80>");out.print(new String(rs3.getString("remark").getBytes("iso_8859_1"),"gb2312"));out.print("</td>");
out.print("</tr>");
}
rs3.close();
con.close();
stmt.close();
}catch(SQLException sqle){
out.println("sqle="+sqle);
}finally{
try{
if(con!=null){
con.close();
}
}catch (SQLException sqle){
out.println("sqle="+sqle);
}
}
%>
</body>
</html>
㈢ 如何利用Java,将excel表格1.xls内的所有数据循环输出jxl.jar我已经弄好了,就是程序不会。
publicvoidgetloc()throwsException
{
Stringfilename="C:\loc1115.xls";
FileaFile=newFile(filename);
Workbookworkbook橡派梁帆贺=Workbook.getWorkbook(aFile);
Sheet轿激sheet=workbook.getSheet(0);inti=0;
for(introw=2;row<sheet.getRows();row++)
{
System.out.println(sheet.getCell(i,row).getContents().trim()));
i++;
}
}
㈣ 如何通过java实现excel多页打印 使用的是jxl
如果袜型是Excel在文件菜单中,蚂漏页面设置工作表 顶端标题告物猜右边
就可以选你要重复打印的区域了
㈤ JAVA)简述如何在控制台打印出一个excel文件的全部内容,(简述类结构和编码过程
类结察源侍构:
首先要定义一个类,该类负责读取Excel文件并将其内容转换成可以在控制台打印的字符串。该类应该具有以下几个成员:
1. 一个构造函数,用于接受Excel文件的路径,并将其加载到内存中。
2. 一个成员变量,用于保存Excel文件的内败吵容。
3. 一个方法,用于将Excel文件的内容转换为可以在控制台打印的字符串。
编码过程:
首先,从构造函数开始,使用Java POI库中裂梁提供的API来读取Excel文件,并将其内容存储在成员变量中。
接下来,实现将Excel文件内容转换为可以在控制台输出的字符串的方法。首先使用POI库中提供的API来读取Excel文件的行和列,将其转换为字符串。然后,使用换行符将每一行的字符串连接起来,最终得到一个可以在控制台输出的字符串。
㈥ 用java操作excel并打印,有一个excel文件,在前台页面有一按钮,点击一下就能在后台用java读取文件并打印
前台页面看是b/s程序看
如果是b/s程序那打印就是在服务端接的打印机里打印出来,这个时候专最好是不要有预览,属否则服务程序就挂起来了不会继续执行。
如果是在前台打印那使用js来操作。你点击按钮后,后台读取excel文件并用一个页面显示出预览效果,再用js自动调用页面的打印就可以在前台电脑带的打印机打印出来了。
㈦ 如何用java来打印excel
importjava.io.File;
importjxl.Workbook;
importjxl.write.Label;
importjxl.write.WritableSheet;
importjxl.write.WritableWorkbook;
/**
*Excel导出(你需要引入jxl的jar包)
*/
publicclassTest{
publicstaticvoidmain(String[]args)
{
Testtest=newTest();
test.exportExcel();
}
/**
*导出(导出到磁盘)
*/
publicvoidexportExcel(){
WritableWorkbookbook=null;
try{
//打开文件
book=Workbook.createWorkbook(newFile("D:/测试.xls"));
//生成名为"学生"的工作表,参数0表示这是第一页
WritableSheetsheet=book.createSheet("学生",0);
//指定单元格位置是第一烂激列第一行(0,0)以及单元格内容为张三
Labellabel=newLabel(0,0,"张三");
派历扮//将定义好的单元格添加到工作表中
sheet.addCell(label);
//保存数字的单元格必须使用Number的完整包路径
jxl.write.Numbernumber=newjxl.write.Number(1,0,30);
sheet.addCell(number);
//写入数据并关闭文件
book.write();
}catch(Exceptione){
System.out.println(e);
}finally{
if(book!=null){
try{
book.close();
}catch(Exceptione)尘灶{
e.printStackTrace();
}
}
}
}
}
㈧ java poi excel 怎样循环输出第一列列
public void getExcel() {
try {
Workbook booka = Workbook.getWorkbook(new File("E:12301.xls"裤禅卖));//得到要输出的excel
Sheet sheeta = booka.getSheet(0);//获取第一个sheet
int b = sheeta.getRows();//获取总行数
for (int i = 0; i < b; i++) {
Cell cell1 = sheeta.getCell(0, i);//依次第一列的第一行,第胡逗二行。。。。直到最后一行
String result = cell1.getContents();//取出元素
System.out.println(result);/袭厅/打印
}
booka.close();//记得关闭,excel是独占文件。
} catch (Exception e) {
System.out.println(e);
}
}
㈨ java如何连续打印文件
把execl输出给用户
让用户手动打印不就完事了?
调用宴告打印机是要调用打印机驱动的,你也不知道用户毕纤的打印机是什么,也不可能去进行限定,因此调用打印机的事基本上就别想晌数明了,也没什么好的解决方案。
㈩ 如何用JAVA调用excel进行打印呢
如果你返皮要用纯念困java去做就用poi吧,自己先定义好excel模版。定义一些占位符,例如:用户名称 ${userName},这样,再用poi解析填充就可以了漏高差。