Commit 1002e0cc by Jbb

将excel转化成流 小修改2

parent ce52cb16
...@@ -22,6 +22,7 @@ import javax.annotation.Resource; ...@@ -22,6 +22,7 @@ import javax.annotation.Resource;
import javax.servlet.ServletOutputStream; import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.InputStream; import java.io.InputStream;
import java.text.DateFormat; import java.text.DateFormat;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
...@@ -69,7 +70,7 @@ public class TbStLayerDataController { ...@@ -69,7 +70,7 @@ public class TbStLayerDataController {
tbStLayer.setLrsj(new Date()); tbStLayer.setLrsj(new Date());
tbStLayerService.save(tbStLayer); tbStLayerService.save(tbStLayer);
InputStream is = excelFile.getInputStream(); InputStream is = excelFile.getInputStream();
//InputStream is = new FileInputStream("C:\\Users\\JBB\\Desktop\\工作目录\\excel\\error (5).xlsx"); //InputStream is = new FileInputStream("C:\\Users\\JBB\\Desktop\\工作目录\\excel\\模板.xlsx");
XSSFWorkbook sheets = new XSSFWorkbook(is); XSSFWorkbook sheets = new XSSFWorkbook(is);
XSSFSheet sheetAt = sheets.getSheetAt(0); XSSFSheet sheetAt = sheets.getSheetAt(0);
//获取excel有多少行 //获取excel有多少行
...@@ -174,10 +175,10 @@ public class TbStLayerDataController { ...@@ -174,10 +175,10 @@ public class TbStLayerDataController {
pointList.add(errorData); pointList.add(errorData);
} }
} }
if(pointList != null && pointList.size() > 0){
//输出流写入到excel中
XSSFWorkbook wb = new XSSFWorkbook(); XSSFWorkbook wb = new XSSFWorkbook();
XSSFSheet sheet = wb.createSheet(); XSSFSheet sheet = wb.createSheet();
if(pointList != null && pointList.size() > 0){
//输出流写入到excel中
//给个标题头 //给个标题头
XSSFRow rowTitle = sheet.createRow(0); XSSFRow rowTitle = sheet.createRow(0);
rowTitle.createCell(0).setCellValue("X"); rowTitle.createCell(0).setCellValue("X");
...@@ -195,12 +196,11 @@ public class TbStLayerDataController { ...@@ -195,12 +196,11 @@ public class TbStLayerDataController {
rowData.createCell(2).setCellValue(title); rowData.createCell(2).setCellValue(title);
rowData.createCell(3).setCellValue(timeFormat); rowData.createCell(3).setCellValue(timeFormat);
} }
}
//通过输出流下载 //通过输出流下载
response.setContentType("application/vnd.ms-excel");
//response.setContentType("application/vnd.ms-excel"); response.setHeader("Content-Disposition", "attachment;filename=error.xlsx");
//response.setHeader("Content-Disposition", "attachment;filename=error.xlsx");
outputStream = response.getOutputStream(); outputStream = response.getOutputStream();
System.out.println(outputStream);
//设置文件响应输出格式 //设置文件响应输出格式
ByteArrayOutputStream os = new ByteArrayOutputStream(); ByteArrayOutputStream os = new ByteArrayOutputStream();
wb.write(os); wb.write(os);
...@@ -208,12 +208,10 @@ public class TbStLayerDataController { ...@@ -208,12 +208,10 @@ public class TbStLayerDataController {
response.setContentType("application/msexcel;charset=utf-8"); response.setContentType("application/msexcel;charset=utf-8");
bytes = os.toByteArray(); bytes = os.toByteArray();
outputStream.write(bytes); outputStream.write(bytes);
/*wb.write(outputStream);
wb.close();
outputStream.flush(); outputStream.flush();
outputStream.close(); outputStream.close();*/
//wb.close();
//return null;
}
return MapRestResult.build(200,"数据上传成功!",bytes); return MapRestResult.build(200,"数据上传成功!",bytes);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment