java poi 在服务器生成excel文件
导出时自由选择路径的代码如下:
1、后台输出Excel文件代码:
OutputStream output = response.getOutputStream();
response.reset();
response.setHeader("Content-disposition", "attachment; filename=" + path);
response.setContentType("Content-Type:application/vnd.ms-excel ");
wb.write(output);
output.close();
2、前端代码:
window.open("getExcelList","_blank");
导出excel数据
* @param id
* @param m
* @return
*/
@RequestMapping("/exportExcel")
public void exportExcel(@RequestParam("id") Integer id, Model m,HttpServletRequest req, HttpServletResponse resp) {
try {
ExportExcel ex = new ExportExcel();
String[] headers = {"最迟还款日", "还款金额","剩余几天","逾期几天", "罚息","是否垫付","状态","是否发放收益"};
List dataset = new ArrayList();
List plans = this.planService.getListByLoan(id);
for (int i = 0; i < plans.size(); i++) {
P2pLoanPlanVo p2pLoanPlanVo = new P2pLoanPlanVo();
p2pLoanPlanVo.setRepayDate(plans.get(i).getRepayDate());
p2pLoanPlanVo.setRepayAmount(plans.get(i).getRepayAmount());
if(plans.get(i).getRepayDays() >= 0 && plans.get(i).getStatus() == 0){
p2pLoanPlanVo.setRepayDays(plans.get(i).getRepayDays());
}else{
p2pLoanPlanVo.setRepayDays(0);
}
if(plans.get(i).getRepayDays() < 0 && plans.get(i).getStatus() == 0){
p2pLoanPlanVo.setRepayYqDays(-plans.get(i).getRepayDays());
}else{
p2pLoanPlanVo.setRepayYqDays(0);
}
private static void WriteExcel2010() throws IOException { String path="C:\\poi2.xlsx"; XSSFWorkbook workbook=new XSSFWorkbook(); XSSFSheet sheet=workbook.createSheet("我的Sheet"); XSSFRow row=sheet.createRow(0); XSSFCell cell=row.createCell(0); cell.setCellValue("我是POI写入的"); XSSFRow row1=sheet.createRow(1); XSSFCell cell1=row1.createCell(0); cell1.setCellValue("2010"); FileOutputStream outputStream=new FileOutputStream(path); workbook.write(outputStream); outputStream.close(); } private static void WriteExcel2003() throws IOException { String path="C:\\poi2.xls"; HSSFWorkbook workbook=new HSSFWorkbook(); HSSFSheet sheet=workbook.createSheet("我的Excel"); HSSFRow row=sheet.createRow(0); HSSFCell cell=row.createCell(0); cell.setCellValue("我是POI写入的"); FileOutputStream outputStream=new FileOutputStream(path); workbook.write(outputStream); outputStream.close(); }
报格式错误是因为你没有填充EXCEL的内容。正确的做法是:
1, HSSFWorkbook ws = new HSSFWorkbook();//建立新HSSFWorkbook对象
2, Sheet sheet = workbook.createSheet(0); //建立一个新的sheet
3,Row row = sheet.createRow(1); //建立一个新的row对象
4, Cell cell = row.createCell(0); //在row上创建方格即列,
cell.setCellValue(cellValue); //设置这个行中列的值
cell.setCellStyle(cellStyle); //设置样式
1、ws=workbook做什么的,是否有必要加
2、在ws上添加sheet
HSSFSHeep sheet = ws.createSheet();
3、HSSFRow row = sheet.createRow(0)
你可以先添加2,试试
很明显ws=workbook;这个有问题。
你给出的代码没有组织excel表格的代码。
你的这个workbook不知道是哪儿来的。
蒲削: POI对excel的支持算是好的了.但也没有你说的那样打印,预览,功能.如果是应用程序,不是很好处理.如果是web程序,可以如下处理.1.在后台用POI类库生成excel.2.用流的方式,将生成的excel传递给前台浏览器,在浏览器中打开.3.使用浏览器的打印功能来进行打印.
东陵区13066998584: java使用poi导出excel - ?
蒲削: 找不到文件流,原因是因为,这里的inputName是你本机的路径,你本机有这个文件,所以能下载,但是发布到服务器上,这里的inputName就是服务器上的路径,而服务器上这个路径下没有这个文件,所以找不到文件流!
东陵区13066998584: jsp如何利用POI直接生成Excel并在页面中导出 - ?
蒲削: java中导出Excel有两个组件可以使用,一个是jxl,一个是POI,我这里用的是POI.导出是可以在服务器上生成文件,然后下载,也可以利用输出流直接在网页 中弹出对话框提示用户保存或下载.生成文件的方式会导致服务器中存在着垃圾文件...
东陵区13066998584: jfinal poi 导出excel - ?
蒲削: 之前了解股一点poi导出大致思路分两种;poi是一套工具类其中保存了对java对excel操作支持;你要做的就是在java后台获取数据并生成一个excel保存进去就可以,在返回一个数据流到前台就OK了.也可以用模板的方式生成在服务器上先建一个excel然后再用后台对其进行修改,页面的话加一个按钮把服务器上excel的地址设置上去
东陵区13066998584: 如何使用Java POI生成Excel表文件 - ?
蒲削: private static void WriteExcel2010() throws IOException {String path="C:\\poi2.xlsx";XSSFWorkbook workbook=new XSSFWorkbook();XSSFSheet sheet=workbook.createSheet("我的Sheet"); XSSFRow row=sheet.createRow(0);...
东陵区13066998584: javaweb中通过POI生成Excel并弹出下载窗口! - ?
蒲削: 把response的输出类型设置成 response.setContentType("application/x-download response.addHeader("Content-Disposition","attachment;filename=myexcel.xls" ); POI结果直接给response的输出流,就可以了
东陵区13066998584: Java怎么用POI读取Excel函数 - ?
蒲削: 思路很简单: 1、在程序里取得公式 2、在公式执行之前校验格式,把多余的都好去掉(简单的replace) 3、然后再进行计算
东陵区13066998584: 如何用java把一个网页表格生成excel - ?
蒲削: 如果用java实现的话,那就需要用到jxl.jar包中提供的类方法来完成了,你可以先查看一下jxl的资料再来做.<br>还有一种简单的方法就是用javascript脚本生成,例如:<br><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ...
东陵区13066998584: Java, web项目,用poi在服务器内存上生成一个Excel 之后,如何在客户端自动打开这个文 - ?
蒲削: web项目只能把这个文件流输出到客户端浏览器,再让客户端打开.如果实现在线编辑,那就要使用第三方控件了.
东陵区13066998584: java使用Apachepoi插件,怎么打包生成Exe文件?
蒲削: 哈哈,这简单!你用什么IDE的,应该有EXPORT选项吧,打包成jar文件,再用exe4j打包成exe格式.