java导出excel分为两种情况,一种是直接运行java的main方法在本机直接生成excel;第二种常用的是生成 到浏览器,选择保存路径。
第一种:
public static void main(String[] args) {
String filePath = "d:\\文件" + System.currentTimeMillis() + ".xls";
HSSFWorkbook wb = null;
HSSFSheet sheet = null;
HSSFRow row = null;
wb = new HSSFWorkbook();
sheet = wb.createSheet();
row = sheet.createRow(0);
HSSFCell cell = row.createCell(0);
cell.setCellValue("001");
cell = row.createCell(1);
cell.setCellValue("002");
cell = row.createCell(2);
createExcelBackground(row, filePath);
}
第二种:
/**
* 创建Excel文件--发送到浏览器端自动生成;
* @param
*/
public static void createExcelToBrowser(HttpServletRequest request,HttpServletResponse resp,String[] headers) throws UnsupportedEncodingException
{
HSSFWorkbook wb = new HSSFWorkbook();
request.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
resp.setContentType("application/x-download");
String fileName = "数据导入模板.xlsx";
fileName = URLEncoder.encode(fileName, "UTF-8");
resp.addHeader("Content-Disposition", "attachment;filename=" + fileName);
HSSFSheet sheet = null;
HSSFRow row = null;
wb = new HSSFWorkbook();
sheet = wb.createSheet();
row = sheet.createRow(0);
HSSFCell cell = row.createCell(0);
for(int i=0;i<headers.length;i++){
cell.setCellValue(headers[i]);
cell = row.createCell(i+1);
}
try
{
OutputStream out = resp.getOutputStream();
wb.write(out);
out.close();
}
catch (Exception e){
e.printStackTrace();
}
}
需要引入的jar包是poi-3.10-FINAL-sources.jar;java类为:
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFDataFormatter;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
到此结束。