向先原来就有数据的Excel写数据是不会覆盖原有的数据,只是在追加数据。
public class Excel {
    public Excel() {
    }
    public void CreateWorkbook(File file, double[] a) {
        try {
            if (!file.exists()) { //判断文件是否已存在,如果没有存在则创建新文件
                jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new
                        File("result.xls"
                        ));
                jxl.write.WritableSheet ws = wwb.createSheet("Test Sheet 1", 0);
                int i = 0;
                ws.setColumnView(0, 20); //设置列宽
                jxl.write.NumberFormat nf = new jxl.write.NumberFormat(
                        "0.0000000000000000"); //定义数值格式
                WritableCellFormat wcfN = new WritableCellFormat(nf);
                String str2 = "第" + 1 + "次试验";
                Label label = new Label(0, 0, str2);
                ws.addCell(label);
                while (i < a.length) {
                    jxl.write.Number num = new jxl.write.Number(0, i + 1,
                            a[i], wcfN);
                    ws.addCell(num);
                    i++;
                }
                //写入Exel工作表
                wwb.write();
                //关闭Excel工作薄对象
                wwb.close();
            } else {
                Workbook rwb = Workbook.getWorkbook(file);
                File tempfile = new File(System.getProperty("user.dir") +
                                         "\\tempfile.xls");
                WritableWorkbook wwb = Workbook.createWorkbook(tempfile, rwb);
                WritableSheet ws = wwb.getSheet(0);
                int num = rwb.getSheet(0).getColumns();
                int num1 = num + 1;
                ws.setColumnView(num, 20); //设置列宽
                String str2 = "第" + num1 + "次试验"; //添加列名
                Label label = new Label(num, 0, str2);
                ws.addCell(label);
                int i = 0;
                jxl.write.NumberFormat nf = new jxl.write.NumberFormat(
                        "0.000000000000000"); //定义数值格式
                WritableCellFormat wcfN = new WritableCellFormat(nf);
                while (i < a.length) {
                    jxl.write.Number number = new jxl.write.Number(num,
                            i + 1,
                            a[i], wcfN);
                    ws.addCell(number);
                    i++;
                }
                wwb.write();
                wwb.close();
                rwb.close();
                String filename = file.getPath();
                System.out.println("filename:" + filename);
                file.delete();
                tempfile.renameTo(file);
                System.out.println("tempfile:" + tempfile.getPath());
                System.out.println(tempfile.exists());
                System.out.println(file.exists());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

java jxl 向Excel中追加数据而不覆盖原来数据的例子的更多相关文章

  1. java jxl读取excel中Date类型

    Workbook book = Workbook.getWorkbook(excel); Sheet sheet = book.getSheet(0); int clos = sheet.getCol ...

  2. java中使用jxl读取excel中的数据

    package bboss; import java.io.File; import java.io.FileInputStream; import java.io.IOException; impo ...

  3. NOPI读取模板导出(Excel中追加数据)

    在Controller里,我们定义一个FileResult的Action,返回值是一个文件形式被浏览器下载下来. [HttpGet] public FileResult ExportProductLi ...

  4. java程序向hdfs中追加数据,异常以及解决方案

    今天在学习hdfs时,遇到问题,就是在向hdfs中追加数据总是报错,在经过好几个小时的努力之下终于将他搞定 解决方案如下:在hadoop的hdfs-sit.xml中添加一下三项 <propert ...

  5. 借助jxl将Excel中的数据注入到Bean中

    前言 使用了Hibernate的项目中需要导入多张表的数据,但是我又不想写多次取出Excle数据放到Bean里的代码,于是写了个ExcleUtils来帮助我做这件事. 基本思路 技术上,首先肯定是要借 ...

  6. JAVA抠取Excel中的图片

    EXCEL中扔了一堆的图片,老大让对应到数据库中的数据上.思路先把图片抠出存成单个图片.然后上传到服务器,取下路径更新到数据库中. 注释掉的部分为有多个Excel时使用. package com.** ...

  7. jxl导出Excel中需要跳过的的坑

    正如上篇文章(JXL封装不能使用static关键字问题)所说,在jxl导出Excel时候如果频繁使用到WritableCellFormat去设置单元格的样式,这个时候经常会出现两种情况: 1.报警告: ...

  8. JAVA导入(读取)Excel中的数据(支持xls与xlsx文件)

    一.导入jar包 poi-3.7.jarpoi-scratchpad-3.7.jarpoi-examples-3.7.jarpoi-ooxml-3.7.jarpoi-ooxml-schemas-3.7 ...

  9. Java jxl导入excel文件,导入的数字、身份证号码、手机号变成了科学计数法,解决方案

    原文出自:https://blog.csdn.net/seesun2012 这是一个execl文件导入数据库操作,使用jxl解析execl导入数据库过程出现了科学计数法,与想要导入的数据不匹配,以下是 ...

随机推荐

  1. java开发--JavaScript

    http://www.cnblogs.com/hongten/archive/2011/03/21/1990121.html JavaScript表单验证电话号码,判断一个输入量是否为电话号码,通过正 ...

  2. ADB调试桥安装(方式一)

    一.ADB简介 adb的全称为Android Debug Bridge,起到调试桥的作用.它android sdk里的一个工具, 用这个工具可以直接操作管理 android模拟器或者真实的androi ...

  3. Linux命令-dd

    dd命令用于指定大小的拷贝的文件或指定转换文件. 以下命令作用:将光驱设备拷贝成镜像文件 参数 if 输入的文件名称 参数 of 输出的文件名称 [root@localhost testA]# dd ...

  4. Line Search and Quasi-Newton Methods 线性搜索与拟牛顿法

    Gradient Descent 机器学习中很多模型的参数估计都要用到优化算法,梯度下降是其中最简单也用得最多的优化算法之一.梯度下降(Gradient Descent)[3]也被称之为最快梯度(St ...

  5. c# ffmpeg常用参数

    c#  ffmpeg常用参数 转换文件格式的同时抓缩微图: ffmpeg -i "test.avi" -y -f image2 -ss 8 -t 0.001 -s 350x240 ...

  6. 树形结构部门的 sqlserver 排序

    树形结构部门的 sqlserver 排序 因为要实现部门排序功能,而且要考虑部门的层级,直接用 sql 排序是不行的,所以写个 sql function 来支持. 首先部门表:company CREA ...

  7. (4)FTP服务器下载文件

    上一篇中,我们提到了怎么从FTP服务器下载文件.现在来具体讲述一下. 首先是路径配置.. 所以此处我们需要一个app.config来设置路径. <?xml version="1.0&q ...

  8. Android eMMC Booting

    Android eMMC Booting Contents [hide] 1 eMMC binaries 1.1 Creating the GPT table 1.2 Modifying .IMG F ...

  9. PHP empty函数判断0返回真还是假?

    最近项目中,遇到一个字段是 “是否启用”值为0,1 在查询时没想就写了 if ( isset($args_array['useFlg']) && !empty($args_array[ ...

  10. 关于结构化BOM的思考

    参加了今天的"自主生产音箱类产品BOM结构问题"(即非采购而是制造的音箱)会议,我发现大家在会议上呈现的产品结构对生产计划的层级需求已上升到5层的需求了,又找段会胜要了各位前期就此 ...