/**
* 将返回数据生成excel文件并上传ftp
*
* @param request
* @return
* @throws IOException
*/
public String writeWithHead(KmsFCRequest request) throws IOException {
OutputStream out = null;
String fileName = “”;
try {
fileName = generateTargetFile();
out = new FileOutputStream(fileName);
ExcelWriter writer = new ExcelWriter(out, ExcelTypeEnum.XLSX);
Sheet sheet1 = new Sheet(1, 0, ExcelPropertyIndexModel.class);
sheet1.setSheetName(“sheet1”);
List data = new ArrayList<>();
assignment(request, data);
writer.write(data, sheet1);
writer.finish();
log.info(“生成EXCEL文件成功”);
// 执行上传ftp
try (InputStream input = new FileInputStream(new File(fileName))😉 {
boolean ftpUp = ftpUtil.uploadFile(FTP_PATH, fileName, input);
log.info(“文件上传至ftp服务器成功!”);
if (ftpUp == true) {
log.info(“删除服务器上的文件开始!”);
boolean status = deleteFile(“F:\fault\123.txt”);
//boolean status = deleteDirectory(“F:\fault\123.txt”);
if (status == true) {
log.info(“删除服务器上的文件成功!”);
} else {
log.info(“删除服务器上的文件失败!”);
}
}
} catch (Exception e) {
log.error("文件上传至ftp服务器失败:[{}]", e);
}
} catch (Exception e) {
log.error("生成EXCEL文件失败:[{}]", e);
} finally {
try {
if (null != out) {
out.close();
}
} catch (Exception e) {
log.error("流关闭异常:[{}]", e);
}
}
return fileName;
}
public static class ExcelPropertyIndexModel extends BaseRowModel {
@ExcelProperty(value = "故障码的状态", index = 0)
private String active;
@ExcelProperty(value = "海拔", index = 1)
private String altitude;
public String getActive() {
return active;
}
public void setActive(String active) {
this.active = active;
}
public String getAltitude() {
return altitude;
}
public void setAltitude(String altitude) {
this.altitude = altitude;
}
}
来源:CSDN
作者:精彩人生的博客
链接:https://blog.csdn.net/weixin_43524361/article/details/104471730