https://www.shuzhiduo.com/A/rV574ppXdP/
https://blog.csdn.net/BHSZZY/article/details/123082890
//表格对象
XSSFWorkbook wb = new XSSFWorkbook();
//样式对象
XSSFCellStyle style = wb.createCellStyle();
//数据格式对象
XSSFDataFormat format = wb.createDataFormat();
//给样式对象设置数据格式
style.setDataFormat(format.getFormat("yyyy-MM-dd HH:mm:ss"));
//创建一个子表
XSSFSheet sheet = wb.createSheet("样例表");
//创建一行
XSSFRow row = sheet.createRow(0);
//创建一格
XSSFCell cell = row.createCell(0);
//给格设置样式,这样日期格式就正确了
cell.setCellStyle(style);
//给格设置内容,日期样例
cell.setCellValue("2022-02-22 22:22:22");
导出
public static void main(String[] args) throws IOException {
// 创建工作簿
HSSFWorkbook wb = new HSSFWorkbook();
// 创建样式
HSSFCellStyle style = wb.createCellStyle();
// 自定义时间格式
style.setDataFormat(wb.createDataFormat().getFormat(
"yyyy年MM月dd日hh时mm分ss秒"));
// yyyy年MM月dd日hh时mm分ss秒
// yyyy-MM-dd hh:mm:ss
// 创建一页
HSSFSheet sheet = wb.createSheet("fristSheet");
// 合并单元格
sheet.addMergedRegion(new CellRangeAddress(0, 1, 1, 4));
// 创建一行
HSSFRow row = sheet.createRow(0);
// 创建一个单元格,向第一个单元格写入值
row.createCell(0).setCellValue("第一个单元格");
// 第二个单元格
row.createCell(1).setCellValue(new Date());
// 位单元格添加样式
row.getCell(1).setCellStyle(style);
// 创建文件流,指定文件保存路径
OutputStream os = new FileOutputStream("导出数据.xls");
// 写
wb.write(os);
os.close();
System.out.println("成功");
}
导入
public static void main(String[] args) throws IOException {
// 创建一个文件输入流
FileInputStream fis = new FileInputStream("导出数据.xls");
// 创建一个poi文件系统对象
POIFSFileSystem poi = new POIFSFileSystem(fis);
// 创建一个工作簿将文件系统对象传入
HSSFWorkbook wb = new HSSFWorkbook(poi);
// 创建一个sheet页面
HSSFSheet sheet = wb.getSheetAt(0);
// 判空
if (sheet == null) {
return;
}
HSSFRow row = sheet.getRow(0);
if (row == null) {
return;
}
HSSFCell cell = row.getCell(0);
if (cell == null) {
return;
}
HSSFCell cell2 = row.getCell(1);
if (cell2 == null) {
return;
}
System.out.println(cell.getStringCellValue());
Date date = cell2.getDateCellValue();
DateFormat formater = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println(formater.format(date));
// 创建一个excel,传入工作簿对象
// ExcelExtractor excel = new ExcelExtractor(wb);
// 设置不打印sheet页名称
// excel.setIncludeSheetNames(false);
// 通过excelextractor对象输出文件内容
// System.out.println(excel.getText());
}