向先原来就有数据的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开发--struts2 标签库使用

    在工程中使用struts2标签 一.struts2标签定义文件在struts2-core-2.0.11.1\META-INF 下面,文件名为struts-tags.tld 二.如果工程使用了servl ...

  2. Struts2笔记——文件上传

    文件上传概述 * 要想使用HTML 表单上传一个或多个文件, 必须把 HTML 表单的 enctype 属性设置为multipart/form-data,把它的 method 属性设置为post *  ...

  3. android程序获取WIFI的IP地址和MAC地址

    转自:http://my.oschina.net/chenj/blog/68680 近日在鼓捣这玩意,拿出来大家分享一下,代码比较简单,如果有不懂的再问 <Button android:id=& ...

  4. 卷积神经网络CNN全面解析

    卷积神经网络(CNN)概述 从多层感知器(MLP)说起 感知器 多层感知器 输入层-隐层 隐层-输出层 Back Propagation 存在的问题 从MLP到CNN CNN的前世今生 CNN的预测过 ...

  5. USACO Section 4.2: Drainage Ditches

    最大流的模板题 /* ID: yingzho1 LANG: C++ TASK: ditch */ #include <iostream> #include <fstream> ...

  6. UVa 10154 - Weights and Measures

    UVa 10154 - Weights and Measures I know, up on top you are seeing great sights,  But down at the bot ...

  7. OpenJDK和OracleJDK的JVM性能有多大差距

    首先要先明确OpenJDK和Sun/OracleJDK之间,以及OpenJDK 6.OpenJDK 7.OpenJDK 7u和OpenJDK 8等项目之间是什么关系,这有助于确定接下来编译要使用的JD ...

  8. How to: Synchronize Files by Using Managed Code

    The examples in this topic focus on the following Sync Framework types: FileSyncProvider FileSyncOpt ...

  9. Node Security

    发一个很早之前做的一个小东西-安全管理软件-可以对U盘进行管理,对后台程序进行扫描.分析!

  10. JAVA字符串格式化-String.format()的使用 (转载)

    常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重 ...