数据导入excel表格

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

package ;

import java.io.File;

import java.io.FileOutputStream;

import java.io.OutputStream;

import java.util.ArrayList;

import java.util.Date;

import jxl.Cell;

import jxl.CellType;

import jxl.Sheet;

import jxl.Workbook;

import jxl.WorkbookSettings;

import jxl.format.Alignment;

import jxl.format.Border;

import jxl.format.BorderLineStyle;

import jxl.format.Colour;

import jxl.format.VerticalAlignment;

import jxl.write.Formula;

import bel;

import jxl.write.NumberFormat;

import jxl.write.WritableCellFeatures;

import jxl.write.WritableCellFormat;

import jxl.write.WritableFont;

import jxl.write.WritableSheet;

import jxl.write.WritableWorkbook;

import jxl.write.WriteException;

public class JExcelUtils {

/**

* 生成Excel文件

* @param path 文件路径

* @param sheetName 工作表名称

* @param dataTitles 数据标题

*/

public void createExcelFile(String path,String sheetName,String[] dataTitles){ WritableWorkbook workbook;

try{

OutputStream os=new FileOutputStream(path);

workbook=Workbook.createWorkbook(os);

WritableSheet sheet = workbook.createSheet(sheetName, 0); //添加第一个工作表

initialSheetSetting(sheet);

Label label;

for (int i=0; i

//Label(列号,行号,内容,风格)

label = new Label(i, 0, dataTitles[i],getTitleCellFormat());

sheet.addCell(label);

}

//插入一行

insertRowData(sheet,1,new String[]{"200201001","张三","100","60","100","260"},getDataCellFormat(CellType.STRING_FORMULA));

//一个一个插入行

label = new Label(0, 2,"200201002",getDataCellFormat(CellType.STRING_FORMULA));

sheet.addCell(label);

label = new Label(1, 2,"李四",getDataCellFormat(CellType.STRING_FORMULA));

sheet.addCell(label);

insertOneCellData(sheet,2,2,70.5,getDataCellFormat(CellType.NUMBER));

insertOneCellData(sheet,3,2,90.523,getDataCellFormat(CellType.NUMBER));

insertOneCellData(sheet,4,2,60.5,getDataCellFormat(CellType.NUMBER)); insertFormula(sheet,5,2,"C3+D3+E3",getDataCellFormat(CellType.NUMBER_FORMULA));

//插入日期

mergeCellsAndInsertData(sheet, 0, 3, 5, 3, new Date(), getDataCellFormat(CellType.DA TE));

workbook.write();

workbook.close();

}catch(Exception e){

e.printStackTrace();

}

}

/**

* 初始化表格属性

* @param sheet

*/

public void initialSheetSetting(WritableSheet sheet){

try{

//sheet.getSettings().setProtected(true); //设置xls的保护,单元格为只读的

sheet.getSettings().setDefaultColumnWidth(10); //设置列的默认宽度

//sheet.setRowView(2,false);//行高自动扩展

//setRowView(int row, int height);--行高

//setColumnView(int col,int width); --列宽

sheet.setColumnView(0,20);//设置第一列宽度

}catch(Exception e){

e.printStackTrace();

}

}

/**

* 插入公式

* @param sheet

* @param col

* @param row

* @param formula

* @param format

*/

public void insertFormula(WritableSheet sheet,Integer col,Integer row,String formula,WritableCellFormat format){

try{

Formula f = new Formula(col, row, formula, format);

sheet.addCell(f);

}catch(Exception e){

e.printStackTrace();

}

}

/**

* 插入一行数据

* @param sheet 工作表

* @param row 行号

* @param content 内容

* @param format 风格

*/

public void insertRowData(WritableSheet sheet,Integer row,String[] dataArr,WritableCellFormat format){

try{

Label label;

for(int i=0;i

label = new Label(i,row,dataArr[i],format);

sheet.addCell(label);

}

相关文档
最新文档