网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
ByteArrayInputStream byteArrayInputStream = IoUtil.toStream("1hello 小虚竹\n2hello 小虚竹","UTF-8");
String str = IoUtil.read(byteArrayInputStream,CharsetUtil.UTF_8);
System.out.println(str);
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toUtf8Stream(java.lang.String)
#### 方法描述
String 转为UTF-8编码的字节流流
#### 支持版本及以上
4.5.1
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| String content |
content 内容
|
#### 返回值:
字节流
#### 参考案例:
//内存读写流 不用回收关闭
ByteArrayInputStream byteArrayInputStream = IoUtil.toUtf8Stream("1hello 小虚竹\n2hello 小虚竹");
String str = IoUtil.read(byteArrayInputStream,CharsetUtil.UTF_8);
System.out.println(str);
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toStream(java.io.File)
#### 方法描述
文件转为{@link FileInputStream}
#### 支持版本及以上
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| File file |
file 文件
|
#### 返回值:
{@link FileInputStream}
#### 参考案例:
File src = new File("C:\\Users\\Administrator\\Desktop\\xuzhu/toStreamTest4.txt") ;
FileInputStream fileInputStream = null;
try {
//创建流
fileInputStream = IoUtil.toStream(src);
String str = IoUtil.read(fileInputStream,CharsetUtil.UTF_8);
System.out.println(str);
} catch (Exception e) {
//抛出一个运行时异常(直接停止掉程序)
throw new RuntimeException("运行时异常",e);
} finally {
try {
//如果是空的 说明流创建失败 失败了不需要关闭
if (fileInputStream != null) {
fileInputStream.close();
}
} catch (Exception e) {
//关闭资源失败 停止程序
throw new RuntimeException("关闭资源失败");
}
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210607200910940.png#pic_center)
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toStream(byte[])
#### 方法描述
byte[] 转为{@link ByteArrayInputStream}
#### 支持版本及以上
4.1.8
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| byte[] content |
content 内容bytes
|
#### 返回值:
字节流
#### 参考案例:
String str = "1hello 小虚竹\n2hello 小虚竹";
byte[] sb = str.getBytes();
//内存读写流 不用回收关闭
ByteArrayInputStream byteArrayInputStream = IoUtil.toStream(sb);
String str1 = IoUtil.read(byteArrayInputStream,CharsetUtil.UTF_8);
System.out.println(str1);
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toStream(java.io.ByteArrayOutputStream)
#### 方法描述
{@link ByteArrayOutputStream}转为{@link ByteArrayInputStream}
#### 支持版本及以上
5.3.6
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| ByteArrayOutputStream out |
out {@link ByteArrayOutputStream}
|
#### 返回值:
字节流
#### 参考案例:
try {
内存读写流 不用回收关闭
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
String str = "1hello 小虚竹\n2hello 小虚竹";
byte[] sb = str.getBytes();
byteArrayOutputStream.write(sb);
ByteArrayInputStream byteArrayInputStream = IoUtil.toStream(byteArrayOutputStream);
String str1 = IoUtil.read(byteArrayInputStream,CharsetUtil.UTF_8);
System.out.println(str1);
} catch (IOException e) {
//抛出一个运行时异常(直接停止掉程序)
throw new RuntimeException("运行时异常",e);
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210607200929385.png#pic_center)
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toBuffered(java.io.InputStream)
#### 方法描述
转换为{@link BufferedInputStream}
#### 支持版本及以上
4.0.10
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| InputStream in |
in {@link InputStream}
|
#### 返回值:
{@link BufferedInputStream}
#### 参考案例:
File src = new File("C:\\Users\\Administrator\\Desktop\\xuzhu/toBufferedTest1.txt") ;
FileInputStream fileInputStream = null;
BufferedInputStream bufferedInputStream = null;
try {
fileInputStream = new FileInputStream(src);
bufferedInputStream = IoUtil.toBuffered(fileInputStream);
String str = IoUtil.read(bufferedInputStream,"UTF-8");
System.out.println(str);
} catch (IOException e) {
//抛出一个运行时异常(直接停止掉程序)
throw new RuntimeException("运行时异常",e);
}finally {
IoUtil.close(fileInputStream);
IoUtil.close(bufferedInputStream);
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210607200945576.png#pic_center)
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toBuffered(java.io.InputStream, int)
#### 方法描述
转换为{@link BufferedInputStream}
#### 支持版本及以上
5.6.1
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| InputStream in |
in {@link InputStream}
|
| int bufferSize |
bufferSize buffer size
|
#### 返回值:
{@link BufferedInputStream}
#### 参考案例:
File src = new File("C:\\Users\\Administrator\\Desktop\\xuzhu/toBufferedTest1.txt") ;
FileInputStream fileInputStream = null;
BufferedInputStream bufferedInputStream = null;
try {
fileInputStream = new FileInputStream(src);
bufferedInputStream = IoUtil.toBuffered(fileInputStream,8192);
String str = IoUtil.read(bufferedInputStream,"UTF-8");
System.out.println(str);
} catch (IOException e) {
//抛出一个运行时异常(直接停止掉程序)
throw new RuntimeException("运行时异常",e);
}finally {
IoUtil.close(fileInputStream);
IoUtil.close(bufferedInputStream);
}
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toBuffered(java.io.OutputStream)
#### 方法描述
转换为{@link BufferedOutputStream}
#### 支持版本及以上
4.0.10
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| OutputStream out |
out {@link OutputStream}
|
#### 返回值:
{@link BufferedOutputStream}
#### 参考案例:
File src = new File("C:\\Users\\Administrator\\Desktop\\xuzhu/toBufferedTest3.txt") ;
OutputStream outputStream = null;
BufferedOutputStream bufferedOutputStream = null;
try {
//创建流
outputStream = new FileOutputStream(src);
bufferedOutputStream = IoUtil.toBuffered(outputStream);
String str = "toBufferedTest3内容1 \ntoBufferedTest3内容2";
byte[] sb = str.getBytes();
bufferedOutputStream.write(sb);
bufferedOutputStream.flush();
} catch (IOException e) {
//抛出一个运行时异常(直接停止掉程序)
throw new RuntimeException("运行时异常",e);
}finally {
IoUtil.close(outputStream);
IoUtil.close(bufferedOutputStream);
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210607201003838.png#pic_center)
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toBuffered(java.io.OutputStream, int)
#### 方法描述
转换为{@link BufferedOutputStream}
#### 支持版本及以上
5.6.1
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| OutputStream out |
out {@link OutputStream}
|
| int bufferSize |
bufferSize buffer size
|
#### 返回值:
{@link BufferedOutputStream}
#### 参考案例:
File src = new File("C:\\Users\\Administrator\\Desktop\\xuzhu/toBufferedTest3.txt") ;
OutputStream outputStream = null;
BufferedOutputStream bufferedOutputStream = null;
try {
//创建流
outputStream = new FileOutputStream(src);
bufferedOutputStream = IoUtil.toBuffered(outputStream,8192);
String str = "toBufferedTest3内容1 \ntoBufferedTest3内容2";
byte[] sb = str.getBytes();
bufferedOutputStream.write(sb);
bufferedOutputStream.flush();
} catch (IOException e) {
//抛出一个运行时异常(直接停止掉程序)
throw new RuntimeException("运行时异常",e);
}finally {
IoUtil.close(outputStream);
IoUtil.close(bufferedOutputStream);
}
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toBuffered(java.io.Reader)
#### 方法描述
转换为{@link BufferedReader}
#### 支持版本及以上
5.6.1
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| Reader reader |
reader {@link Reader}
|
#### 返回值:
{@link BufferedReader}
#### 参考案例:
Reader reader = null;
BufferedReader bufferedReader = null;
try {
reader = new StringReader("1hello 小虚竹\n2hello 小虚竹");
bufferedReader = IoUtil.toBuffered(reader);
//读第一行数据
String str = "";
while (str != null){
str = bufferedReader.readLine();
if(str !=null){
System.out.println(str);
}
}
} catch (IOException e) {
//抛出一个运行时异常(直接停止掉程序)
throw new RuntimeException("运行时异常",e);
}finally {
IoUtil.close(reader);
IoUtil.close(bufferedReader);
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210607201026135.png#pic_center)
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toBuffered(java.io.Reader, int)
#### 方法描述
转换为{@link BufferedReader}
#### 支持版本及以上
5.6.1
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| Reader reader |
reader {@link Reader}
|
| int bufferSize |
bufferSize buffer size
|
#### 返回值:
{@link BufferedReader}
#### 参考案例:
Reader reader = null;
BufferedReader bufferedReader = null;
try {
reader = new StringReader("1hello 小虚竹\n2hello 小虚竹");
bufferedReader = IoUtil.toBuffered(reader,8192);
//读第一行数据
String str = "";
while (str != null){
str = bufferedReader.readLine();
if(str !=null){
System.out.println(str);
}
}
} catch (IOException e) {
//抛出一个运行时异常(直接停止掉程序)
throw new RuntimeException("运行时异常",e);
}finally {
IoUtil.close(reader);
IoUtil.close(bufferedReader);
}
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toBuffered(java.io.Writer)
#### 方法描述
转换为{@link BufferedWriter}
#### 支持版本及以上
5.6.1
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| Writer writer |
writer {@link Writer}
|
#### 返回值:
{@link BufferedWriter}
#### 参考案例:
File dest = new File("C:\\Users\\Administrator\\Desktop\\xuzhu/toBufferedTest7.txt") ;
FileWriter fw = null;
BufferedWriter bufferedWriter = null;
try {
//创建流
fw = new FileWriter(dest);
bufferedWriter = IoUtil.toBuffered(fw);
String str = "toBufferedTest7 \ntoBufferedTest7";
bufferedWriter.write(str);
bufferedWriter.flush();
} catch (IOException e) {
//抛出一个运行时异常(直接停止掉程序)
throw new RuntimeException("运行时异常",e);
}finally {
IoUtil.close(fw);
IoUtil.close(bufferedWriter);
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210607201048421.png#pic_center)
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toBuffered(java.io.Writer, int)
#### 方法描述
转换为{@link BufferedWriter}
#### 支持版本及以上
5.6.1
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| Writer writer |
writer {@link Writer}
|
| int bufferSize |
bufferSize buffer size
|
#### 返回值:
{@link BufferedWriter}
#### 参考案例:
![img](https://img-blog.csdnimg.cn/img_convert/059d00073a0f7beb20b6054a8aa46a2b.png)
![img](https://img-blog.csdnimg.cn/img_convert/09dbd67309d123c6e4279d6c571e2db7.png)
![img](https://img-blog.csdnimg.cn/img_convert/906ba57bbe5891177da91f688cbfce19.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**
插入图片描述](https://img-blog.csdnimg.cn/20210607201048421.png#pic_center)
#### 源码解析:
链接:待补充
### 方法明细
#### 方法名称:cn.hutool.core.io.IoUtil.toBuffered(java.io.Writer, int)
#### 方法描述
转换为{@link BufferedWriter}
#### 支持版本及以上
5.6.1
#### 参数描述:
| 参数名 | 描述 |
| --- | --- |
| Writer writer |
writer {@link Writer}
|
| int bufferSize |
bufferSize buffer size
|
#### 返回值:
{@link BufferedWriter}
#### 参考案例:
[外链图片转存中...(img-WF8Qh7E4-1715257065625)]
[外链图片转存中...(img-M9xG7CiM-1715257065626)]
[外链图片转存中...(img-0qkvJ29a-1715257065626)]
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**