package org.wxz.tools.oracle.io.file.util;
import java.io.File;
import org.wxz.tools.oracle.codec.enumeration.CharsetNameEnum;
import org.wxz.tools.oracle.io.callback.IOReadCallback;
import org.wxz.tools.oracle.io.util.IOOpenUtil;
import org.wxz.tools.oracle.io.util.IOReadUtil;
/**
* 文件读取工具类
*
* @author XiongZhi.Wu 2017年12月10日
*/
public abstract class FileReadUtil {
// 默认字符集名称
private static final String DEFAULT_CHARSET_NAME = CharsetNameEnum.UTF_8.getValue();
/**
* 读取
*
* @author XiongZhi.Wu 2017年12月10日
* @param file
* 文件路径
* @param ioReadCallback
* 回调方法
*/
public static void loopRead(String file, IOReadCallback<String> ioReadCallback) {
loopRead(file, DEFAULT_CHARSET_NAME, ioReadCallback);
}
/**
* 读取
*
* @author XiongZhi.Wu 2017年12月10日
* @param file
* 文件路径
* @param charsetName
* 文件编码
* @param ioReadCallback
* 回调方法
*/
public static void loopRead(String file, String charsetName, IOReadCallback<String> ioReadCallback) {
loopRead(new File(file), charsetName, ioReadCallback);
}
/**
* 读取
*
* @author XiongZhi.Wu 2017年12月10日
* @param file
* 文件对象
* @param ioReadCallback
* 回调方法
*/
public static void loopRead(File file, IOReadCallback<String> ioReadCallback) {
loopRead(file, DEFAULT_CHARSET_NAME, ioReadCallback);
}
/**
* 读取
*
* @author XiongZhi.Wu 2017年12月10日
* @param file
* 文件对象
* @param charsetName
* 文件编码
* @param ioReadCallback
* 回调方法
*/
public static void loopRead(File file, String charsetName, IOReadCallback<String> ioReadCallback) {
IOReadUtil.loopRead(IOOpenUtil.initBufferedReader(file, charsetName), ioReadCallback);
}
}