现有的报表,是通过 POI导出的,有excel报表,也有word报告现需要给excel文档、word 文档设置其背景图片。请问,POI支持么?怎么做?另外:可以设置文件“只读”么?先谢过各位同仁!

解决方案 »

  1.   

    package test;// 生成Excel的类 
    import java.io.File;import jxl.Workbook;
    import jxl.write.Label;
    import jxl.write.WritableSheet;
    import jxl.write.WritableWorkbook;public class CreateExcel {
    public static void main(String args[]) {
    try {
    // 打开文件
    WritableWorkbook book = Workbook.createWorkbook(new File("aa.xls"));
    // 生成名为“第一页”的工作表,参数0表示这是第一页
    WritableSheet sheet = book.createSheet("第一页",0);
    // 在Label对象的构造子中指名单元格位置是第一列第一行(0,0)
    // 以及单元格内容为test
    //Label label = new Label(0,0,"testssss");
    for(int i=0;i<10;i++){
    for (int j=0;j<10;j++){
    Label label = new Label(i,j,i*j+"");
    sheet.addCell(label);
    }
    }
    // 将定义好的单元格添加到工作表中

    // 生成一个保存数字的单元格 必须使用Number的完整包路径,否则有语法歧义 单元格位置是第二列,第一行,值为789.123
    jxl.write.Number number = new jxl.write.Number(1, 0, 555.12541);
    sheet.addCell(number);
    // 写入数据并关闭文件
    book.write();
    book.close(); } catch (Exception e) {
    System.out.println(e);
    }
    }
    }
    ---------------------------------------------------------------------
    修改
    package test;import java.io.File;import jxl.Workbook;
    import jxl.write.Label;
    import jxl.write.WritableSheet;
    import jxl.write.WritableWorkbook;public class UpdateExcel {
    public static void main(String args[]) {
    try {
    //Excel获得文件
    Workbook wb = Workbook.getWorkbook(new File("test.xls"));
    //打开一个文件的副本,并且指定数据写回到原文件
    WritableWorkbook book = Workbook.createWorkbook(new File("test.xls"), wb);
    //添加一个工作表
    WritableSheet sheet = book.createSheet("第二页 ", 1);
    sheet.addCell(new Label(0, 0, "第二页的测试数据 "));
    book.write();
    book.close();
    } catch (Exception e) {
    System.out.println(e);
    }
    }
    }
    ---------
    你自己加一点java对图片的操作,用IO写进Excel就行了,
      

  2.   

    不明白.我用的是POI你用的是JXL而且,我想要一个设置文档背景的例子就是要那种 “底印”效果。打开文件,隐隐约约看得到有较淡的背景。
      

  3.   

    我同楼主同样在关注这个问题,Java操作word并加上水印。我看了看网上的资料,好像poi生成word的例子很少,几乎全是读取word文档,另外几个框架如Jacob,jcom,Java2word 关于加水印的资料也很少,也可能是我太菜,没找到:(