Java中生成excel,并进行数据的写入读出
来源:互联网 发布:知行乐学教育集团 编辑:程序博客网 时间:2024/06/05 06:55
最近在公司写单元测试时,从前台传入的参数是由 excel 数据转化的字节组,在后台中把字节数组转化为 XSSFSheet 后转成 VO 。所以在写单元测试时要把字节数组作为输入,之前没有遇到过这种情况,一开始尝试把后台把字节数据转化成 XSSFSheet 的方法模拟掉,行不通。
解决方法:
1、用 XSSFWorkbook 对象生成 Excel 的对象,添加数据,然后转化为字节数组。
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = workbook.createSheet();//添加Worksheet(不添加sheet时生成的xls文件打开时会报错)
XSSFRow row=sheet.createRow((short)(0)); //第一行
row.createCell(0).setCellValue("流水号"); //设置第一个(从0开始)单元格的数据
row.createCell(1).setCellValue("供应商名称"); //设置第二个(从0开始)单元格的数据
XSSFRowrow2=sheet.createRow((short)(1)); //第二行
row2.createCell(0).setCellValue("TBSO171010808930"); //设置第一个(从0开始)单元格的数据
row2.createCell(1).setCellValue("王***");//设置第二个(从0开始)单元格的数据
ByteArrayOutputStream os = new ByteArrayOutputStream();
try {
workbook.write(os);
} catch (IOException e) {
e.printStackTrace();
}
byte[] bytes = os.toByteArray()2、手动新建一个 excel ,写入数据,保存到指定 test/main/source 目录中
String filePath ="/excelTestCase/manualCloseAccountsSettleOrder/manualSettleOrderTemplate.xlsx";
byte[] bytes =this.getBytes(filePath);
public byte[] getBytes(String filePath){
byte[] buffer = null;
try {
MockServletContext servletContext = new MockServletContext();
MockHttpServletRequest request = new MockHttpServletRequest(servletContext);
FlexContext.setThreadLocalHttpRequest(request);
SecurityUtil.getContextPath();
InputStream in = new ClassPathResource(filePath).getInputStream();
ByteArrayOutputStream bos = new ByteArrayOutputStream(1000);
byte[] b = new byte[1000];
int n;
while ((n = in.read(b)) != -1) {
bos.write(b, 0, n);
}
in.close();
bos.close();
buffer = bos.toByteArray();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return buffer;
}
- Java中生成excel,并进行数据的写入读出
- vb 生成excel 并写入数据
- 生成Excel文件并写入数据
- Java操作Excel之理解JXL--读取Excel模板动态写入数据并生成Excel
- Java操作Excel之理解JXL--读取Excel模板动态写入数据并生成Excel
- java控制excel文件的 写入和读出操作
- java中使用JXL对Excel文件进行数据的写入、导出操作
- 【C++】Mat型数据写入txt文件并可用标签进行搜索读出
- excel文件的读出和写入
- C#中生成Word并写入数据
- java SpringMVC中 POI读取数据库数据并写入Excel表格中,并实现下载功能
- 创建新的Excel ,并写入数据
- asp中checkbox数据写入与读出
- java操作excel之创建excel文件,并写入数据
- c#程序调试时,写入/读出数据于Excel处理
- 写入、读出数据
- java读取Excel数据,然后写入到txt文件,并批量保存到oracle数据库中
- 复制excel并写入数据
- 5. Longest Palindromic Substring——LeetCode OJ
- bzoj2154 Crash的数字表格(莫比乌斯反演)
- 检查xml文件标签是否匹配
- 自我学习心得JavaEE
- 获取系统时间
- Java中生成excel,并进行数据的写入读出
- 读书笔记 TCP/IP详解 卷1
- 设计模式介绍
- uva439 暂时未AC代码
- poj2723 Get Luffy Out (二分+2-SAT)
- Jsp---JSTL
- 归并排序
- 区间之和
- 如何建立DLL