工具类关闭流

package com.peixin.io.otyers;


import java.io.Closeable;
import java.io.IOException;


/**
 * 工具类关闭流
 * 可变参数:...只能放在函数形参的最后一个位置,表示可以传入任意个数的实参,处理方式与数组一致
 * @author Administrator
 *
 */
public class FielUtil {
public static void close(Closeable... io){
for(Closeable temp:io){
if(null!=temp){
try {
temp.close(); //凡是实现Closeable接口的都有close()方法
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}  
}

}
                 
}
public static <T extends Closeable>void closeAll(T... io){
for(Closeable temp:io){
if(null!=temp){
try {
temp.close(); //凡是实现Closeable接口的都有close()方法
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}  
}

}
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
EasyExcel 是一个基于 Java 的简单、高效、无侵入的 Excel 文件读写工具包,可以快速方便地实现 Excel 文件的读写操作。下面是一个 easyexcel 工具类的示例: ```java public class ExcelUtil { /** * 读取 Excel 文件内容 * * @param inputStream Excel 文件输入 * @param clazz 数据模型类 * @return 读取结果 */ public static <T> List<T> readExcel(InputStream inputStream, Class<T> clazz) { List<T> dataList = new ArrayList<>(); try { // 创建读取 Excel 文件的工作簿对象 ExcelReader excelReader = new ExcelReader(inputStream, null, new AnalysisEventListener<T>() { @Override public void invoke(T data, AnalysisContext context) { // 读取到一行数据时的回调方法 dataList.add(data); } @Override public void doAfterAllAnalysed(AnalysisContext context) { // 读取结束时的回调方法 } }); // 读取 Excel 文件中的数据并转换为指定的数据模型类 excelReader.read(new Sheet(1, 1, clazz)); } catch (Exception e) { e.printStackTrace(); } return dataList; } /** * 写入数据到 Excel 文件 * * @param outputStream Excel 文件输出 * @param dataList 数据列表 * @param clazz 数据模型类 */ public static <T> void writeExcel(OutputStream outputStream, List<T> dataList, Class<T> clazz) { try { // 创建写入 Excel 文件的工作簿对象 ExcelWriter excelWriter = new ExcelWriter(outputStream, ExcelTypeEnum.XLSX); // 创建写入 Excel 文件的 sheet 对象 Sheet sheet = new Sheet(1, 0, clazz); // 写入数据到 Excel 文件 excelWriter.write(dataList, sheet); // 关闭写入 Excel 文件的工作簿对象 excelWriter.finish(); } catch (Exception e) { e.printStackTrace(); } } } ``` 使用示例: ```java // 读取 Excel 文件 List<User> userList = ExcelUtil.readExcel(new FileInputStream("user.xlsx"), User.class); // 写入数据到 Excel 文件 List<User> userList = new ArrayList<>(); userList.add(new User("张三", 30, "男")); userList.add(new User("李四", 25, "女")); ExcelUtil.writeExcel(new FileOutputStream("user.xlsx"), userList, User.class); ``` 其中 `User` 类为数据模型类,示例代码如下: ```java public class User { private String name; private Integer age; private String gender; public User() { } public User(String name, Integer age, String gender) { this.name = name; this.age = age; this.gender = gender; } // getter 和 setter 方法省略 } ``` 以上代码仅为示例,具体的应用场景中可能需要根据实际需求进行适当的修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值