【1人回答】使用java代码下载Word文件 您所在的位置:网站首页 java下载文件代码 【1人回答】使用java代码下载Word文件

【1人回答】使用java代码下载Word文件

2022-03-26 01:35| 来源: 网络整理| 查看: 265

回答:

Excel工具类 package com.ohd.ie.Product.action;import JAVA.awt.image.bufferedimage;import JAVA.io.*;import JAVAx.imageio.imageio;import org.apache.commons.io.output.bytearrayoutputstream;import jxl.workbook;import jxl.Format.alignment;import jxl.Format.verticalalignment;import jxl.write.*;import jxl.write.number;import jxl.write.biff.rowsexceededexception;public class Excel {PRivate outputstream os;PRivate writableworkbook wwb = null;PRivate writablesheet ws = null;PRivate writablecellFormat titlecellFormat = null;PRivate writablecellFormat nobordercellFormat = null;PRivate writablecellFormat hasbordercellFormat = null;PRivate writablecellFormat hasbordercellnumberFormat = null;PRivate writablecellFormat hasbordercellnumberFormat2 = null;PRivate writableimage writableimage=null;PRivate int r;public Excel(outputstream os){this.os = os;r = -1;try {wwb = workbook.CReateworkbook(os);//创建工作表 ws = wwb.CReatesheet("sheet1",0);//设置表头字体,大小,加粗 titlecellFormat = new writablecellFormat();titlecellFormat.setalignment(alignment.centre); titlecellFormat.setverticalalignment(verticalalignment.centre); //自动换行 titlecellFormat.setwrap(true); titlecellFormat.setfont(new writablefont(writablefont.CReatefont("宋体"),12,writablefont.bold));titlecellFormat.setborder(jxl.Format.border.all, jxl.Format.borderlinestyle.thin);//设置表格字体,大小----无边框 nobordercellFormat = new writablecellFormat();nobordercellFormat.setalignment(alignment.centre); nobordercellFormat.setverticalalignment(verticalalignment.centre); nobordercellFormat.setfont(new writablefont(writablefont.CReatefont("宋体"),12));//设置表格字体,大小----有边框 hasbordercellFormat = new writablecellFormat();hasbordercellFormat.setalignment(alignment.centre); hasbordercellFormat.setverticalalignment(verticalalignment.centre); hasbordercellFormat.setfont(new writablefont(writablefont.CReatefont("宋体"),12));hasbordercellFormat.setborder(jxl.Format.border.all, jxl.Format.borderlinestyle.thin);//设置表格字体,大小----有边框(小数) numberFormat nf = new numberFormat("#0.00");hasbordercellnumberFormat = new writablecellFormat(nf);hasbordercellnumberFormat.setalignment(alignment.centre); hasbordercellnumberFormat.setverticalalignment(verticalalignment.centre); hasbordercellnumberFormat.setfont(new writablefont(writablefont.CReatefont("宋体"),12));hasbordercellnumberFormat.setborder(jxl.Format.border.all, jxl.Format.borderlinestyle.thin);//设置表格字体,大小----有边框(整数) numberFormat nf2 = new numberFormat("#0");hasbordercellnumberFormat2 = new writablecellFormat(nf2);hasbordercellnumberFormat2.setalignment(alignment.centre); hasbordercellnumberFormat2.setverticalalignment(verticalalignment.centre); hasbordercellnumberFormat2.setfont(new writablefont(writablefont.CReatefont("宋体"),12));hasbordercellnumberFormat2.setborder(jxl.Format.border.all, jxl.Format.borderlinestyle.thin);} catch (exception e) {// todo Auto-generated catch blocke.PRintstacktrace(); } } /** * * @param content 内容* @param c 列* @param style 样式* @param isnewline 是否换行* @param mergetype 合并类型* @param mergecount 合并个数* @param wIDth 单元格宽*/ public voID setExcelcell(string content,int c,int style,boolean isnewline,int mergetype,int mergecount,int wIDth){try {//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////报表内容//////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// if(isnewline){ r++; } writablecell l = null;if(style == 1){l = new label(c,r,content,titlecellFormat);} else if(style == 2){l = new label(c,r,content,nobordercellFormat);} else if(style == 3){l = new label(c,r,content,hasbordercellFormat);} else if(style == 4){l = new number(c,r,double.parsedouble(content),hasbordercellnumberFormat);} else if(style == 5){l = new number(c,r,integer.parseint(content),hasbordercellnumberFormat2);} ws.addcell(l); if(wIDth != 0){ws.setcolumnview(c,wIDth); } //veryhuo,com if(mergetype == 1){//x 轴方向ws.mergecells(c, r, c+mergecount-1 , r);} else if(mergetype == 2){//y 轴方向ws.mergecells(c, r, c, r+mergecount-1);} if(isnewline){ ws.setrowview(r, 350);if(style == 1 && r != 0){ws.setrowview(r, 900);} else{ ws.setrowview(r, 350);} } // //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// } catch (exception e) {system.out.PRintln(e.tostring()); } } public voID setExcelcellex(string content,int c,int style,boolean isnewline,int mergetype,int mergecount,int wIDth,int row){try {//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////报表内容//////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// if(isnewline){ r++; } writablecell l = null;if(style == 1){l = new label(c,r,content,titlecellFormat);} else if(style == 2){l = new label(c,r,content,nobordercellFormat);} else if(style == 3){if(content.indexof(".jpg")!=-1 ||content.indexof(".jpg")!=-1){file outputfile=null;file imgfile =new file(content);if(imgfile.exists()&&imgfile.length()>0){ bufferedimage input=null;try {input = imageio.read(imgfile);} catch (exception e) {e.PRintstacktrace(); } if(input!=null){ string path=imgfile.getabsolutepath();outputfile = new file(path.SUbstring(0,path.lastindexof('.')+1)+"png");imageio.write(input, "png", outputfile);if(outputfile.exists()&&outputfile.length()>0){ ws.setrowview(row,2000); //ws.setcolumnview(8, 10);writableimage = new writableimage(c+0.1, row+0.1, 0.8, 0.8, outputfile);ws.addimage(writableimage); l = new label(c,r,"",hasbordercellFormat);} } } }else{ l = new label(c,r,content,hasbordercellFormat);} } else if(style == 4){l = new number(c,r,double.parsedouble(content),hasbordercellnumberFormat);} else if(style == 5){l = new number(c,r,integer.parseint(content),hasbordercellnumberFormat2);} ws.addcell(l); if(wIDth != 0){ws.setcolumnview(c,wIDth); } if(mergetype == 1){//x 轴方向ws.mergecells(c, r, c+mergecount-1 , r);} else if(mergetype == 2){//y 轴方向ws.mergecells(c, r, c, r+mergecount-1);} if(isnewline){ ws.setrowview(r, 350);if(style == 1 && r != 0){ws.setrowview(r, 900);} else{ ws.setrowview(r, 350);} } } catch (exception e) {system.out.PRintln(e.tostring()); } } public voID setrowheight(int val){try {ws.setrowview(r, val);} catch (rowsexceededexception e) {e.PRintstacktrace(); } } public voID getExcelreSUlt(){try {wwb.write(); } catch (exception e) {system.out.PRintln(e.tostring()); } finally{ if(wwb != null){try {wwb.close(); if(os != null){os.close(); } } catch (writeexception e) {e.PRintstacktrace(); } catch (ioexception e) {e.PRintstacktrace(); } } } } } 需要的jar包:jxl.jar



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有