import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.Date; import jxl.Workbook;
import jxl.write.DateFormats;
import jxl.write.DateTime;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException; public class SimpleExcelDemo {
private static int column = 0;
private static int row = 0;
//创建工作薄
public static void createExcelFile(String demand_id) throws WriteException,IOException{
//创建文件目录
String realPath = "C:\\excel\\";
File fileDir = new File(realPath);
if(!fileDir.exists()){
fileDir.mkdirs();
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String date = sdf.format(new Date(System.currentTimeMillis()));
String fileName = date + ".xls";
String filePath = realPath + fileName;
File file = new File(filePath);
WritableCellFormat wf = new WritableCellFormat(DateFormats.FORMAT1);
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String current = sdf1.format(new Date(System.currentTimeMillis()));
// 创建一个文件输出流,用于写出表格到本地文件夹
OutputStream out = null;
WritableWorkbook wwb = null;
WritableSheet sheet = null;
Label cell;
try {
if(!file.exists()){
out = new FileOutputStream(file);
//创建excel文件(创建一个可读写入的工作薄)
wwb = Workbook.createWorkbook(out);
//创建新的一页
sheet = wwb.createSheet("已处理", 0);
//创建要显示的内容,创建一个单元格,第一个参数为列坐标,第二个参数为行坐标,第三个参数为内容
cell = new Label(column, row, "需求ID");
sheet.addCell(cell);
cell = new Label(column + 1, row, "上传时间");
sheet.addCell(cell);
cell = new Label(column, ++row, demand_id);
sheet.addCell(cell);
Date d = new Date();
d = sdf1.parse(current);
DateTime dt = new DateTime(column + 1, row, d, wf);
sheet.addCell(dt);
}else{
File[] files = fileDir.listFiles();
for(File f:files){
if(f.getName().equals(fileName)){
Workbook wb = Workbook.getWorkbook(f);
wwb = Workbook.createWorkbook(new File(realPath + fileName), wb);
sheet = wwb.getSheet("已处理");
cell = new Label(column, ++row, demand_id);
sheet.addCell(cell);
Date d = new Date();
d = sdf1.parse(current);
DateTime dt = new DateTime(column + 1, row, d, wf);
sheet.addCell(dt);
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
wwb.write(); // 写入Excel工作表
wwb.close(); // 关闭Excel工作表,同时也会关闭IO流。
} public static void main(String[] args) throws Exception {
createExcelFile("1234");
System.out.println(column + "," + row);
//创建文件目录
File fileDir = new File("C:\\excel");
if(!fileDir.exists()){
fileDir.mkdirs();
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String date = sdf.format(new Date(System.currentTimeMillis()));
String fileName = date + ".xls";
String filePath = "C:\\excel\\" + fileName;
File file = new File(filePath);
// 创建一个文件输出流,用于写出表格到本地文件夹
OutputStream out = new FileOutputStream(file);
//创建excel文件(创建一个可读写入的工作薄)
WritableWorkbook wwb = Workbook.createWorkbook(out);
//创建新的一页
WritableSheet sheet = wwb.createSheet("已处理", 0);
//创建要显示的内容,创建一个单元格,第一个参数为列坐标,第二个参数为行坐标,第三个参数为内容
Label cell = new Label(0,0,"需求ID");
sheet.addCell(cell);
cell = new Label(1,0,"上传时间");
sheet.addCell(cell);
cell = new Label(0, 1, "5055");
sheet.addCell(cell);
WritableCellFormat wf = new WritableCellFormat(DateFormats.FORMAT1);
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String current = sdf1.format(new Date(System.currentTimeMillis()));
Date d = sdf1.parse(current);
DateTime birthday = new DateTime(1, 1, d, wf);
sheet.addCell(birthday);
wwb.write(); // 写入Excel工作表
wwb.close(); // 关闭Excel工作表,同时也会关闭IO流。
}
}

Java创建Excel-DEMO的更多相关文章

  1. 使用Java创建Excel,并添加内容

    使用Java创建Excel,并添加内容 一.依赖的Jar包 jxl.jar,使用jxl操作Excel Jxl是一个开源的Java Excel API项目,通过Jxl,Java可以很方便的操作微软的Ex ...

  2. 如何使用Java创建Excel(.xls 和 .xlsx)文件 并写入数据

    1,需要依赖的jar包, <!-- POI(operate excel) start --> <!-- the version of the following POI packag ...

  3. Java 创建 Excel 数据透视表

    Excel 数据透视表具有强大的数据处理功能,能够使表格中的数据更加直观化.使用Excel 数据透视表,能方便用户快速的排序. 筛选各种数据,同时也能满足用户对不同数据汇总的需求.本文将介绍如何在Ja ...

  4. Java 创建Excel并逐行写入数据

    package com.xxx.common.excel; import java.io.File; import java.io.FileInputStream; import java.io.Fi ...

  5. [转载]Java操作Excel文件的两种方案

    微软在桌面系统上的成功,令我们不得不大量使用它的办公产品,如:Word,Excel.时至今日,它的源代码仍然不公开已封锁了我们的进一步应用和开发.在我们实际开发企业办公系统的过程中,常常有客户这样子要 ...

  6. Java Struts2 POI创建Excel文件并实现文件下载

    Java Struts2 POI创建Excel文件并实现文件下载2013-09-04 18:53 6059人阅读 评论(1) 收藏 举报 分类: Java EE(49) Struts(6) 版权声明: ...

  7. Java导出Excel和CSV(简单Demo)

    Java导出Excel和CSV的简单实现,分别使用POI和JavaCSV. JavaBean public class ReportInfo { int id; String date; int nu ...

  8. java处理Excel文件---excel文件的创建,删除,写入,读取

    这篇文章的代码是我封装的excel处理类,包含推断excel是否存在,表格索引是否存在,创建excel文件,删除excel文件,往excel中写入信息,从excel中读取数据. 尤其在写入与读取两个方 ...

  9. JAVA实现创建Excel表并导出(转发)

    <span style="font-family:Verdana, Arial, Helvetica, sans-serif;line-height:25.2px;background ...

  10. java使用poi创建excel文件

    import org.apache.poi.hssf.usermodel.HSSFCell;import org.apache.poi.hssf.usermodel.HSSFRow;import or ...

随机推荐

  1. 我的FPGA

    转眼间我都工作三个年头了,这两年多时间我一直从事着FPGA测试工作,从一开始的懵懂无知,到现在的些许理解,我想记录和分享我对FPGA测试的理解. 之所以选择在博客园写这样,是我发现在这里阅览文章不需要 ...

  2. 7-11 社交网络图中结点的“重要性”计算 (30 分)(Dijkstra算法)

    题意:  思路:对每个输入的点跑一遍dijkstra算法,然后对这个点到所有点的距离求和按公式输出就可以了. (这次尝试了用数组模拟链表来做最短路问题,刷新了自己对最短路的理解) 这里构造链表的过程我 ...

  3. Laravel-Action 对代码的改造

    前言 以往写过俩篇文章[积德篇] 如何少写PHP "烂"代码 https://segmentfault.com/a/11...举枪消灭"烂代码"的实战案例 ht ...

  4. generating multiple ordered files in python

    Goal: To generate =35= files named 'capitalsquiz1.txt', 'capitalsquiz2.txt'...'capitalsquiz35.txt' * ...

  5. hdu 5170 精度控制

    众所周知,GTY是一位神犇,为了更好的虐场,他从来不写数学作业而是去屠题,他的数学老师非常不爽,但由于GTY每次考试都AK,她也不能说什么,有一天老师在黑板上写了四个数——a,b,c,da,b,c,d ...

  6. max_element()与min_element()

    #include<iostream>#include<algorithm>using namespace std;bool cmp(int i,int j){ return i ...

  7. 暑假集训D21总结

    考试 今天考了一大圈 不可做 题 本来是爆零的,后来把数据改了一下,成功暴力骗了5分= = 刷题 无限水题$ing$,然后就$GG$了 生活 不开心$ing$,没有啥好写的 今天就是莫名的不开心 歌 ...

  8. [bzoj1926][Sdoi2010]粟粟的书架_二分_主席树

    粟粟的书架 bzoj-1926 Sdoi-2010 题目大意:题目链接 注释:略 想法:分成两个题 前面的我们可以二分,直接二分出来检验即可. 对于R=1的,相当一个数列,我们在上面建立主席树. 然后 ...

  9. 动态加入的HTML的自己主动渲染

    这两天在写一个用EasyUI的前台,遇到动态向Layout加入HTML内容时没有自己主动渲染的问题.查了一下网上的资料后得以解决.详细例如以下: $("#content").htm ...

  10. C++源码实现:21种常用设计模式

    C++源码实现:21种常用设计模式一直以来在设计模式的学习中,都是出现java的源码,这对学习C++的极度不友好.本工程是基于C++实现21种常用的设计模式,里面包含了实例代码和示例.编写的时候在学习 ...