mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-07-21 15:09:48 +08:00
fix comment
This commit is contained in:
@@ -1760,6 +1760,7 @@ public class CollUtil {
|
||||
* @param <K> Map键类型
|
||||
* @param <V> Map值类型
|
||||
* @param values 数据列表
|
||||
* @param map Map对象,转换后的键值对加入此Map,通过传入此对象自定义Map类型
|
||||
* @param keyFunc 生成key的函数
|
||||
* @return 生成的map
|
||||
* @since 5.2.6
|
||||
@@ -1772,12 +1773,13 @@ public class CollUtil {
|
||||
* 集合转换为Map,转换规则为:<br>
|
||||
* 按照keyFunc函数规则根据元素对象生成Key,按照valueFunc函数规则根据元素对象生成value组成新的Map
|
||||
*
|
||||
* @param <K> Map键类型
|
||||
* @param <V> Map值类型
|
||||
* @param <E> 元素类型
|
||||
* @param values 数据列表
|
||||
* @param map Map对象,转换后的键值对加入此Map,通过传入此对象自定义Map类型
|
||||
* @param keyFunc 生成key的函数
|
||||
* @param <K> Map键类型
|
||||
* @param <V> Map值类型
|
||||
* @param <E> 元素类型
|
||||
* @param values 数据列表
|
||||
* @param map Map对象,转换后的键值对加入此Map,通过传入此对象自定义Map类型
|
||||
* @param keyFunc 生成key的函数
|
||||
* @param valueFunc 生成值的策略函数
|
||||
* @return 生成的map
|
||||
* @since 5.2.6
|
||||
*/
|
||||
|
@@ -202,7 +202,7 @@ public class IterUtil {
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
public static <K, V> Map<K, V> fieldValueMap(Iterator<V> iter, String fieldName) {
|
||||
return toMap(iter, new HashMap<>(), (value)->(K)ReflectUtil.getFieldValue(value, fieldName));
|
||||
return toMap(iter, new HashMap<>(), (value) -> (K) ReflectUtil.getFieldValue(value, fieldName));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -236,8 +236,8 @@ public class IterUtil {
|
||||
@SuppressWarnings("unchecked")
|
||||
public static <K, V> Map<K, V> fieldValueAsMap(Iterator<?> iter, String fieldNameForKey, String fieldNameForValue) {
|
||||
return toMap(iter, new HashMap<>(),
|
||||
(value)->(K)ReflectUtil.getFieldValue(value, fieldNameForKey),
|
||||
(value)->(V)ReflectUtil.getFieldValue(value, fieldNameForValue)
|
||||
(value) -> (K) ReflectUtil.getFieldValue(value, fieldNameForKey),
|
||||
(value) -> (V) ReflectUtil.getFieldValue(value, fieldNameForValue)
|
||||
);
|
||||
}
|
||||
|
||||
@@ -644,12 +644,13 @@ public class IterUtil {
|
||||
* 集合转换为Map,转换规则为:<br>
|
||||
* 按照keyFunc函数规则根据元素对象生成Key,按照valueFunc函数规则根据元素对象生成value组成新的Map
|
||||
*
|
||||
* @param <K> Map键类型
|
||||
* @param <V> Map值类型
|
||||
* @param <E> 元素类型
|
||||
* @param iterator 数据列表
|
||||
* @param map Map对象,转换后的键值对加入此Map,通过传入此对象自定义Map类型
|
||||
* @param keyFunc 生成key的函数
|
||||
* @param <K> Map键类型
|
||||
* @param <V> Map值类型
|
||||
* @param <E> 元素类型
|
||||
* @param iterator 数据列表
|
||||
* @param map Map对象,转换后的键值对加入此Map,通过传入此对象自定义Map类型
|
||||
* @param keyFunc 生成key的函数
|
||||
* @param valueFunc 生成值的策略函数
|
||||
* @return 生成的map
|
||||
* @since 5.2.6
|
||||
*/
|
||||
|
@@ -46,26 +46,34 @@ import java.util.zip.Checksum;
|
||||
/**
|
||||
* IO工具类<br>
|
||||
* IO工具类只是辅助流的读写,并不负责关闭流。原因是流可能被多次读写,读写关闭后容易造成问题。
|
||||
*
|
||||
* @author xiaoleilu
|
||||
*
|
||||
* @author xiaoleilu
|
||||
*/
|
||||
public class IoUtil {
|
||||
|
||||
/** 默认缓存大小 8192*/
|
||||
/**
|
||||
* 默认缓存大小 8192
|
||||
*/
|
||||
public static final int DEFAULT_BUFFER_SIZE = 2 << 12;
|
||||
/** 默认中等缓存大小 16384*/
|
||||
/**
|
||||
* 默认中等缓存大小 16384
|
||||
*/
|
||||
public static final int DEFAULT_MIDDLE_BUFFER_SIZE = 2 << 13;
|
||||
/** 默认大缓存大小 32768*/
|
||||
/**
|
||||
* 默认大缓存大小 32768
|
||||
*/
|
||||
public static final int DEFAULT_LARGE_BUFFER_SIZE = 2 << 14;
|
||||
|
||||
/** 数据流末尾 */
|
||||
/**
|
||||
* 数据流末尾
|
||||
*/
|
||||
public static final int EOF = -1;
|
||||
|
||||
// -------------------------------------------------------------------------------------- Copy start
|
||||
|
||||
/**
|
||||
* 将Reader中的内容复制到Writer中 使用默认缓存大小,拷贝后不关闭Reader
|
||||
*
|
||||
*
|
||||
* @param reader Reader
|
||||
* @param writer Writer
|
||||
* @return 拷贝的字节数
|
||||
@@ -77,9 +85,9 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 将Reader中的内容复制到Writer中,拷贝后不关闭Reader
|
||||
*
|
||||
* @param reader Reader
|
||||
* @param writer Writer
|
||||
*
|
||||
* @param reader Reader
|
||||
* @param writer Writer
|
||||
* @param bufferSize 缓存大小
|
||||
* @return 传输的byte数
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -90,10 +98,10 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 将Reader中的内容复制到Writer中,拷贝后不关闭Reader
|
||||
*
|
||||
* @param reader Reader
|
||||
* @param writer Writer
|
||||
* @param bufferSize 缓存大小
|
||||
*
|
||||
* @param reader Reader
|
||||
* @param writer Writer
|
||||
* @param bufferSize 缓存大小
|
||||
* @param streamProgress 进度处理器
|
||||
* @return 传输的byte数
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -125,8 +133,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 拷贝流,使用默认Buffer大小,拷贝后不关闭流
|
||||
*
|
||||
* @param in 输入流
|
||||
*
|
||||
* @param in 输入流
|
||||
* @param out 输出流
|
||||
* @return 传输的byte数
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -137,9 +145,9 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 拷贝流,拷贝后不关闭流
|
||||
*
|
||||
* @param in 输入流
|
||||
* @param out 输出流
|
||||
*
|
||||
* @param in 输入流
|
||||
* @param out 输出流
|
||||
* @param bufferSize 缓存大小
|
||||
* @return 传输的byte数
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -150,10 +158,10 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 拷贝流,拷贝后不关闭流
|
||||
*
|
||||
* @param in 输入流
|
||||
* @param out 输出流
|
||||
* @param bufferSize 缓存大小
|
||||
*
|
||||
* @param in 输入流
|
||||
* @param out 输出流
|
||||
* @param bufferSize 缓存大小
|
||||
* @param streamProgress 进度条
|
||||
* @return 传输的byte数
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -171,7 +179,7 @@ public class IoUtil {
|
||||
}
|
||||
long size = 0;
|
||||
try {
|
||||
for (int readSize; (readSize = in.read(buffer)) != EOF;) {
|
||||
for (int readSize; (readSize = in.read(buffer)) != EOF; ) {
|
||||
out.write(buffer, 0, readSize);
|
||||
size += readSize;
|
||||
out.flush();
|
||||
@@ -191,10 +199,10 @@ public class IoUtil {
|
||||
/**
|
||||
* 拷贝流 thanks to: https://github.com/venusdrogon/feilong-io/blob/master/src/main/java/com/feilong/io/IOWriteUtil.java<br>
|
||||
* 本方法不会关闭流
|
||||
*
|
||||
* @param in 输入流
|
||||
* @param out 输出流
|
||||
* @param bufferSize 缓存大小
|
||||
*
|
||||
* @param in 输入流
|
||||
* @param out 输出流
|
||||
* @param bufferSize 缓存大小
|
||||
* @param streamProgress 进度条
|
||||
* @return 传输的byte数
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -205,8 +213,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 拷贝文件流,使用NIO
|
||||
*
|
||||
* @param in 输入
|
||||
*
|
||||
* @param in 输入
|
||||
* @param out 输出
|
||||
* @return 拷贝的字节数
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -231,8 +239,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 拷贝流,使用NIO,不会关闭流
|
||||
*
|
||||
* @param in {@link ReadableByteChannel}
|
||||
*
|
||||
* @param in {@link ReadableByteChannel}
|
||||
* @param out {@link WritableByteChannel}
|
||||
* @return 拷贝的字节数
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -244,9 +252,9 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 拷贝流,使用NIO,不会关闭流
|
||||
*
|
||||
* @param in {@link ReadableByteChannel}
|
||||
* @param out {@link WritableByteChannel}
|
||||
*
|
||||
* @param in {@link ReadableByteChannel}
|
||||
* @param out {@link WritableByteChannel}
|
||||
* @param bufferSize 缓冲大小,如果小于等于0,使用默认
|
||||
* @return 拷贝的字节数
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -258,10 +266,10 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 拷贝流,使用NIO,不会关闭流
|
||||
*
|
||||
* @param in {@link ReadableByteChannel}
|
||||
* @param out {@link WritableByteChannel}
|
||||
* @param bufferSize 缓冲大小,如果小于等于0,使用默认
|
||||
*
|
||||
* @param in {@link ReadableByteChannel}
|
||||
* @param out {@link WritableByteChannel}
|
||||
* @param bufferSize 缓冲大小,如果小于等于0,使用默认
|
||||
* @param streamProgress {@link StreamProgress}进度处理器
|
||||
* @return 拷贝的字节数
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -296,6 +304,7 @@ public class IoUtil {
|
||||
// -------------------------------------------------------------------------------------- Copy end
|
||||
|
||||
// -------------------------------------------------------------------------------------- getReader and getWriter start
|
||||
|
||||
/**
|
||||
* 获得一个文件读取器,默认使用UTF-8编码
|
||||
*
|
||||
@@ -309,8 +318,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 获得一个文件读取器
|
||||
*
|
||||
* @param in 输入流
|
||||
*
|
||||
* @param in 输入流
|
||||
* @param charsetName 字符集名称
|
||||
* @return BufferedReader对象
|
||||
*/
|
||||
@@ -320,8 +329,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 获得一个Reader
|
||||
*
|
||||
* @param in 输入流
|
||||
*
|
||||
* @param in 输入流
|
||||
* @param charset 字符集
|
||||
* @return BufferedReader对象
|
||||
*/
|
||||
@@ -343,7 +352,7 @@ public class IoUtil {
|
||||
/**
|
||||
* 获得{@link BufferedReader}<br>
|
||||
* 如果是{@link BufferedReader}强转返回,否则新建。如果提供的Reader为null返回null
|
||||
*
|
||||
*
|
||||
* @param reader 普通Reader,如果为null返回null
|
||||
* @return {@link BufferedReader} or null
|
||||
* @since 3.0.9
|
||||
@@ -359,8 +368,8 @@ public class IoUtil {
|
||||
/**
|
||||
* 获得{@link PushbackReader}<br>
|
||||
* 如果是{@link PushbackReader}强转返回,否则新建
|
||||
*
|
||||
* @param reader 普通Reader
|
||||
*
|
||||
* @param reader 普通Reader
|
||||
* @param pushBackSize 推后的byte数
|
||||
* @return {@link PushbackReader}
|
||||
* @since 3.1.0
|
||||
@@ -382,8 +391,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 获得一个Writer
|
||||
*
|
||||
* @param out 输入流
|
||||
*
|
||||
* @param out 输入流
|
||||
* @param charsetName 字符集
|
||||
* @return OutputStreamWriter对象
|
||||
*/
|
||||
@@ -393,8 +402,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 获得一个Writer
|
||||
*
|
||||
* @param out 输入流
|
||||
*
|
||||
* @param out 输入流
|
||||
* @param charset 字符集
|
||||
* @return OutputStreamWriter对象
|
||||
*/
|
||||
@@ -412,10 +421,11 @@ public class IoUtil {
|
||||
// -------------------------------------------------------------------------------------- getReader and getWriter end
|
||||
|
||||
// -------------------------------------------------------------------------------------- read start
|
||||
|
||||
/**
|
||||
* 从流中读取内容
|
||||
*
|
||||
* @param in 输入流
|
||||
*
|
||||
* @param in 输入流
|
||||
* @param charsetName 字符集
|
||||
* @return 内容
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -427,8 +437,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取内容,读取完毕后并不关闭流
|
||||
*
|
||||
* @param in 输入流,读取完毕后并不关闭流
|
||||
*
|
||||
* @param in 输入流,读取完毕后并不关闭流
|
||||
* @param charset 字符集
|
||||
* @return 内容
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -440,7 +450,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取内容,读取完毕后并不关闭流
|
||||
*
|
||||
*
|
||||
* @param channel 可读通道,读取完毕后并不关闭通道
|
||||
* @param charset 字符集
|
||||
* @return 内容
|
||||
@@ -454,7 +464,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取内容,读到输出流中,读取完毕后并不关闭流
|
||||
*
|
||||
*
|
||||
* @param in 输入流
|
||||
* @return 输出流
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -467,7 +477,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取内容,读到输出流中
|
||||
*
|
||||
*
|
||||
* @param channel 可读通道,读取完毕后并不关闭通道
|
||||
* @return 输出流
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -480,7 +490,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从Reader中读取String,读取完毕后并不关闭Reader
|
||||
*
|
||||
*
|
||||
* @param reader Reader
|
||||
* @return String
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -500,7 +510,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从FileChannel中读取UTF-8编码内容
|
||||
*
|
||||
*
|
||||
* @param fileChannel 文件管道
|
||||
* @return 内容
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -511,7 +521,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从FileChannel中读取内容,读取完毕后并不关闭Channel
|
||||
*
|
||||
*
|
||||
* @param fileChannel 文件管道
|
||||
* @param charsetName 字符集
|
||||
* @return 内容
|
||||
@@ -523,9 +533,9 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从FileChannel中读取内容
|
||||
*
|
||||
*
|
||||
* @param fileChannel 文件管道
|
||||
* @param charset 字符集
|
||||
* @param charset 字符集
|
||||
* @return 内容
|
||||
* @throws IORuntimeException IO异常
|
||||
*/
|
||||
@@ -541,7 +551,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取bytes,读取完毕后关闭流
|
||||
*
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @return bytes
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -553,7 +563,7 @@ public class IoUtil {
|
||||
/**
|
||||
* 从流中读取bytes
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @param in {@link InputStream}
|
||||
* @param isCloseStream 是否关闭输入流
|
||||
* @return bytes
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -562,7 +572,7 @@ public class IoUtil {
|
||||
public static byte[] readBytes(InputStream in, boolean isCloseStream) throws IORuntimeException {
|
||||
final FastByteArrayOutputStream out = new FastByteArrayOutputStream();
|
||||
copy(in, out);
|
||||
if(isCloseStream){
|
||||
if (isCloseStream) {
|
||||
close(in);
|
||||
}
|
||||
return out.toByteArray();
|
||||
@@ -570,8 +580,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 读取指定长度的byte数组,不关闭流
|
||||
*
|
||||
* @param in {@link InputStream},为null返回null
|
||||
*
|
||||
* @param in {@link InputStream},为null返回null
|
||||
* @param length 长度,小于等于0返回空byte数组
|
||||
* @return bytes
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -602,9 +612,9 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 读取16进制字符串
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @param length 长度
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @param length 长度
|
||||
* @param toLowerCase true 传换成小写格式 , false 传换成大写格式
|
||||
* @return 16进制字符串
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -615,7 +625,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取前28个byte并转换为16进制,字母部分使用大写
|
||||
*
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @return 16进制字符串
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -626,7 +636,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取前28个byte并转换为16进制,字母部分使用小写
|
||||
*
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @return 16进制字符串
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -637,12 +647,12 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取对象,即对象的反序列化
|
||||
*
|
||||
*
|
||||
* @param <T> 读取对象的类型
|
||||
* @param in 输入流
|
||||
* @param in 输入流
|
||||
* @return 输出流
|
||||
* @throws IORuntimeException IO异常
|
||||
* @throws UtilException ClassNotFoundException包装
|
||||
* @throws UtilException ClassNotFoundException包装
|
||||
* @deprecated 由于存在对象反序列化漏洞风险,请使用{@link #readObj(InputStream, Class)}
|
||||
*/
|
||||
@Deprecated
|
||||
@@ -653,11 +663,12 @@ public class IoUtil {
|
||||
/**
|
||||
* 从流中读取对象,即对象的反序列化,读取后不关闭流
|
||||
*
|
||||
* @param <T> 读取对象的类型
|
||||
* @param in 输入流
|
||||
* @param <T> 读取对象的类型
|
||||
* @param in 输入流
|
||||
* @param clazz 读取对象类型
|
||||
* @return 输出流
|
||||
* @throws IORuntimeException IO异常
|
||||
* @throws UtilException ClassNotFoundException包装
|
||||
* @throws UtilException ClassNotFoundException包装
|
||||
*/
|
||||
public static <T> T readObj(InputStream in, Class<T> clazz) throws IORuntimeException, UtilException {
|
||||
if (in == null) {
|
||||
@@ -677,9 +688,9 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取内容,使用UTF-8编码
|
||||
*
|
||||
* @param <T> 集合类型
|
||||
* @param in 输入流
|
||||
*
|
||||
* @param <T> 集合类型
|
||||
* @param in 输入流
|
||||
* @param collection 返回集合
|
||||
* @return 内容
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -690,11 +701,11 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取内容
|
||||
*
|
||||
* @param <T> 集合类型
|
||||
* @param in 输入流
|
||||
*
|
||||
* @param <T> 集合类型
|
||||
* @param in 输入流
|
||||
* @param charsetName 字符集
|
||||
* @param collection 返回集合
|
||||
* @param collection 返回集合
|
||||
* @return 内容
|
||||
* @throws IORuntimeException IO异常
|
||||
*/
|
||||
@@ -704,10 +715,10 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从流中读取内容
|
||||
*
|
||||
* @param <T> 集合类型
|
||||
* @param in 输入流
|
||||
* @param charset 字符集
|
||||
*
|
||||
* @param <T> 集合类型
|
||||
* @param in 输入流
|
||||
* @param charset 字符集
|
||||
* @param collection 返回集合
|
||||
* @return 内容
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -718,9 +729,9 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从Reader中读取内容
|
||||
*
|
||||
* @param <T> 集合类型
|
||||
* @param reader {@link Reader}
|
||||
*
|
||||
* @param <T> 集合类型
|
||||
* @param reader {@link Reader}
|
||||
* @param collection 返回集合
|
||||
* @return 内容
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -732,8 +743,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 按行读取UTF-8编码数据,针对每行的数据做处理
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @param lineHandler 行处理接口,实现handle方法用于编辑一行的数据后入到指定地方
|
||||
* @throws IORuntimeException IO异常
|
||||
* @since 3.1.1
|
||||
@@ -744,9 +755,9 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 按行读取数据,针对每行的数据做处理
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @param charset {@link Charset}编码
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @param charset {@link Charset}编码
|
||||
* @param lineHandler 行处理接口,实现handle方法用于编辑一行的数据后入到指定地方
|
||||
* @throws IORuntimeException IO异常
|
||||
* @since 3.0.9
|
||||
@@ -758,8 +769,8 @@ public class IoUtil {
|
||||
/**
|
||||
* 按行读取数据,针对每行的数据做处理<br>
|
||||
* {@link Reader}自带编码定义,因此读取数据的编码跟随其编码。
|
||||
*
|
||||
* @param reader {@link Reader}
|
||||
*
|
||||
* @param reader {@link Reader}
|
||||
* @param lineHandler 行处理接口,实现handle方法用于编辑一行的数据后入到指定地方
|
||||
* @throws IORuntimeException IO异常
|
||||
*/
|
||||
@@ -783,8 +794,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* String 转为流
|
||||
*
|
||||
* @param content 内容
|
||||
*
|
||||
* @param content 内容
|
||||
* @param charsetName 编码
|
||||
* @return 字节流
|
||||
*/
|
||||
@@ -794,7 +805,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* String 转为流
|
||||
*
|
||||
*
|
||||
* @param content 内容
|
||||
* @param charset 编码
|
||||
* @return 字节流
|
||||
@@ -805,10 +816,10 @@ public class IoUtil {
|
||||
}
|
||||
return toStream(StrUtil.bytes(content, charset));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* String 转为UTF-8编码的字节流流
|
||||
*
|
||||
*
|
||||
* @param content 内容
|
||||
* @return 字节流
|
||||
* @since 4.5.1
|
||||
@@ -847,7 +858,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 转换为{@link BufferedInputStream}
|
||||
*
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @return {@link BufferedInputStream}
|
||||
* @since 4.0.10
|
||||
@@ -858,7 +869,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 转换为{@link BufferedOutputStream}
|
||||
*
|
||||
*
|
||||
* @param out {@link OutputStream}
|
||||
* @return {@link BufferedOutputStream}
|
||||
* @since 4.0.10
|
||||
@@ -870,7 +881,7 @@ public class IoUtil {
|
||||
/**
|
||||
* 将{@link InputStream}转换为支持mark标记的流<br>
|
||||
* 若原流支持mark标记,则返回原流,否则使用{@link BufferedInputStream} 包装之
|
||||
*
|
||||
*
|
||||
* @param in 流
|
||||
* @return {@link InputStream}
|
||||
* @since 4.0.9
|
||||
@@ -888,8 +899,8 @@ public class IoUtil {
|
||||
/**
|
||||
* 转换为{@link PushbackInputStream}<br>
|
||||
* 如果传入的输入流已经是{@link PushbackInputStream},强转返回,否则新建一个
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
*
|
||||
* @param in {@link InputStream}
|
||||
* @param pushBackSize 推后的byte数
|
||||
* @return {@link PushbackInputStream}
|
||||
* @since 3.1.0
|
||||
@@ -900,10 +911,10 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 将byte[]写到流中
|
||||
*
|
||||
* @param out 输出流
|
||||
*
|
||||
* @param out 输出流
|
||||
* @param isCloseOut 写入完毕是否关闭输出流
|
||||
* @param content 写入的内容
|
||||
* @param content 写入的内容
|
||||
* @throws IORuntimeException IO异常
|
||||
*/
|
||||
public static void write(OutputStream out, boolean isCloseOut, byte[] content) throws IORuntimeException {
|
||||
@@ -920,10 +931,10 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 将多部分内容写到流中,自动转换为UTF-8字符串
|
||||
*
|
||||
* @param out 输出流
|
||||
*
|
||||
* @param out 输出流
|
||||
* @param isCloseOut 写入完毕是否关闭输出流
|
||||
* @param contents 写入的内容,调用toString()方法,不包括不会自动换行
|
||||
* @param contents 写入的内容,调用toString()方法,不包括不会自动换行
|
||||
* @throws IORuntimeException IO异常
|
||||
* @since 3.1.1
|
||||
*/
|
||||
@@ -933,11 +944,11 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 将多部分内容写到流中,自动转换为字符串
|
||||
*
|
||||
* @param out 输出流
|
||||
*
|
||||
* @param out 输出流
|
||||
* @param charsetName 写出的内容的字符集
|
||||
* @param isCloseOut 写入完毕是否关闭输出流
|
||||
* @param contents 写入的内容,调用toString()方法,不包括不会自动换行
|
||||
* @param isCloseOut 写入完毕是否关闭输出流
|
||||
* @param contents 写入的内容,调用toString()方法,不包括不会自动换行
|
||||
* @throws IORuntimeException IO异常
|
||||
*/
|
||||
public static void write(OutputStream out, String charsetName, boolean isCloseOut, Object... contents) throws IORuntimeException {
|
||||
@@ -946,11 +957,11 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 将多部分内容写到流中,自动转换为字符串
|
||||
*
|
||||
* @param out 输出流
|
||||
* @param charset 写出的内容的字符集
|
||||
*
|
||||
* @param out 输出流
|
||||
* @param charset 写出的内容的字符集
|
||||
* @param isCloseOut 写入完毕是否关闭输出流
|
||||
* @param contents 写入的内容,调用toString()方法,不包括不会自动换行
|
||||
* @param contents 写入的内容,调用toString()方法,不包括不会自动换行
|
||||
* @throws IORuntimeException IO异常
|
||||
* @since 3.0.9
|
||||
*/
|
||||
@@ -975,10 +986,10 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 将多部分内容写到流中
|
||||
*
|
||||
* @param out 输出流
|
||||
*
|
||||
* @param out 输出流
|
||||
* @param isCloseOut 写入完毕是否关闭输出流
|
||||
* @param contents 写入的内容
|
||||
* @param contents 写入的内容
|
||||
* @throws IORuntimeException IO异常
|
||||
*/
|
||||
public static void writeObjects(OutputStream out, boolean isCloseOut, Serializable... contents) throws IORuntimeException {
|
||||
@@ -1002,7 +1013,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 从缓存中刷出数据
|
||||
*
|
||||
*
|
||||
* @param flushable {@link Flushable}
|
||||
* @since 4.2.2
|
||||
*/
|
||||
@@ -1019,7 +1030,7 @@ public class IoUtil {
|
||||
/**
|
||||
* 关闭<br>
|
||||
* 关闭失败不会抛出异常
|
||||
*
|
||||
*
|
||||
* @param closeable 被关闭的对象
|
||||
*/
|
||||
public static void close(Closeable closeable) {
|
||||
@@ -1035,7 +1046,7 @@ public class IoUtil {
|
||||
/**
|
||||
* 关闭<br>
|
||||
* 关闭失败不会抛出异常
|
||||
*
|
||||
*
|
||||
* @param closeable 被关闭的对象
|
||||
*/
|
||||
public static void close(AutoCloseable closeable) {
|
||||
@@ -1051,7 +1062,7 @@ public class IoUtil {
|
||||
/**
|
||||
* 尝试关闭指定对象<br>
|
||||
* 判断对象如果实现了{@link AutoCloseable},则调用之
|
||||
*
|
||||
*
|
||||
* @param obj 可关闭对象
|
||||
* @since 4.3.2
|
||||
*/
|
||||
@@ -1156,7 +1167,7 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 计算流CRC32校验码,计算后关闭流
|
||||
*
|
||||
*
|
||||
* @param in 文件,不能为目录
|
||||
* @return CRC32值
|
||||
* @throws IORuntimeException IO异常
|
||||
@@ -1168,8 +1179,8 @@ public class IoUtil {
|
||||
|
||||
/**
|
||||
* 计算流的校验码,计算后关闭流
|
||||
*
|
||||
* @param in 流
|
||||
*
|
||||
* @param in 流
|
||||
* @param checksum {@link Checksum}
|
||||
* @return Checksum
|
||||
* @throws IORuntimeException IO异常
|
||||
|
Reference in New Issue
Block a user