流关闭工具类

package org.wxz.tools.oracle.io.util;

import java.io.Closeable;
import java.io.Flushable;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.Reader;
import java.io.Writer;

import org.wxz.tools.oracle.empty.util.NullUtil;
import org.wxz.tools.oracle.exception.print.util.ExceptionPrintUtil;

/**
* 流关闭工具类
*
* @author XiongZhi.Wu 2017年12月10日
*/
public abstract class IOCloseUtil {
/**
* 关闭
*
* @author XiongZhi.Wu 2017年12月10日
* @param ios
* 各种流
*/
public static void flushable(Flushable… ios) {
for (Flushable io : ios) {
if (NullUtil.isNotNull(io)) {
try {
io.flush();
} catch (Exception e) {
System.out.println(ExceptionPrintUtil.initExceptionPrintModel(e, “IO Flush Cause Exception”));
}
}
}
}

/**
 * 关闭
 * 
 * @author XiongZhi.Wu 2017年12月10日
 * @param ios
 *            各种流
 */
public static void closeable(Closeable... ios) {
    for (Closeable io : ios) {
        if (NullUtil.isNotNull(io)) {
            try {
                io.close();
            } catch (Exception e) {
                System.out.println(ExceptionPrintUtil.initExceptionPrintModel(e, "IO Close Cause Exception"));
            }
        }
    }
}

/**
 * 关闭
 * 
 * @author XiongZhi.Wu 2017年12月10日
 * @param is
 *            输入流
 */
public static void closeInputStream(InputStream is) {
    closeable(is);
}

/**
 * 关闭
 * 
 * @author XiongZhi.Wu 2017年12月10日
 * @param os
 *            输出流
 */
public static void closeOutputStream(OutputStream os) {
    flushable(os);
    closeable(os);
}

/**
 * 关闭
 * 
 * @author XiongZhi.Wu 2017年12月10日
 * @param is
 *            输入流
 * @param os
 *            输入流
 */
public static void closeInputAndOutputStream(InputStream is, OutputStream os) {
    closeInputStream(is);
    closeOutputStream(os);
}

/**
 * 关闭
 * 
 * @author XiongZhi.Wu 2017年12月10日
 * @param reader
 *            输入流
 */
public static void closeReader(Reader reader) {
    closeable(reader);
}

/**
 * 关闭
 * 
 * @author XiongZhi.Wu 2017年12月10日
 * @param writer
 *            输出流
 */
public static void closeWriter(Writer writer) {
    flushable(writer);
    closeable(writer);
}

/**
 * 关闭
 * 
 * @author XiongZhi.Wu 2017年12月10日
 * @param reader
 *            输入流
 * @param writer
 *            输出流
 */
public static void closeReaderAndWriter(Reader reader, Writer writer) {
    closeReader(reader);
    closeWriter(writer);
}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值