11hutool实战:FileUtil 文件工具类(写入,追加文件)

Posted 小虚竹

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了11hutool实战:FileUtil 文件工具类(写入,追加文件)相关的知识,希望对你有一定的参考价值。

技术活,该赏
关注+一键三连(点赞,评论,收藏)再看,养成好习惯

hutool实战(带你掌握里面的各种工具)目录

用途:FileUtil 文件工具类(写入,追加文件)

使用场景

提供了多种写入和追加文件的方式

项目引用

此博文的依据:hutool-5.6.5版本源码

        <dependency>
			<groupId>cn.hutool</groupId>
			<artifactId>hutool-core</artifactId>
			<version>5.6.5</version>
		</dependency>

方法摘要

方法描述
cn.hutool.core.io.FileUtil.writeUtf8String(java.lang.String, java.lang.String)
将String写入文件,覆盖模式,字符集为UTF-8
cn.hutool.core.io.FileUtil.writeUtf8String(java.lang.String, java.io.File)
将String写入文件,覆盖模式,字符集为UTF-8
cn.hutool.core.io.FileUtil.writeString(java.lang.String, java.lang.String, java.lang.String)
将String写入文件,覆盖模式
cn.hutool.core.io.FileUtil.writeString(java.lang.String, java.lang.String, java.nio.charset.Charset)
将String写入文件,覆盖模式
cn.hutool.core.io.FileUtil.writeString(java.lang.String, java.io.File, java.lang.String)
将String写入文件,覆盖模式
cn.hutool.core.io.FileUtil.writeString(java.lang.String, java.io.File, java.nio.charset.Charset)
将String写入文件,覆盖模式
cn.hutool.core.io.FileUtil.appendUtf8String(java.lang.String, java.lang.String)
将String写入文件,UTF-8编码追加模式
cn.hutool.core.io.FileUtil.appendString(java.lang.String, java.lang.String, java.lang.String)
将String写入文件,追加模式
cn.hutool.core.io.FileUtil.appendString(java.lang.String, java.lang.String, java.nio.charset.Charset)
将String写入文件,追加模式
cn.hutool.core.io.FileUtil.appendUtf8String(java.lang.String, java.io.File)
将String写入文件,UTF-8编码追加模式
cn.hutool.core.io.FileUtil.appendString(java.lang.String, java.io.File, java.lang.String)
将String写入文件,追加模式
cn.hutool.core.io.FileUtil.appendString(java.lang.String, java.io.File, java.nio.charset.Charset)
将String写入文件,追加模式
cn.hutool.core.io.FileUtil.writeUtf8Lines(java.util.Collection, java.lang.String)
将列表写入文件,覆盖模式,编码为UTF-8
cn.hutool.core.io.FileUtil.writeUtf8Lines(java.util.Collection, java.io.File)
将列表写入文件,覆盖模式,编码为UTF-8
cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.lang.String, java.lang.String)
将列表写入文件,覆盖模式
cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.lang.String, java.nio.charset.Charset)
将列表写入文件,覆盖模式
cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.io.File, java.lang.String)
将列表写入文件,覆盖模式
cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.io.File, java.nio.charset.Charset)
将列表写入文件,覆盖模式
cn.hutool.core.io.FileUtil.appendUtf8Lines(java.util.Collection, java.io.File)
将列表写入文件,追加模式
cn.hutool.core.io.FileUtil.appendUtf8Lines(java.util.Collection, java.lang.String)
将列表写入文件,追加模式
cn.hutool.core.io.FileUtil.appendLines(java.util.Collection, java.lang.String, java.lang.String)
将列表写入文件,追加模式
cn.hutool.core.io.FileUtil.appendLines(java.util.Collection, java.io.File, java.lang.String)
将列表写入文件,追加模式
cn.hutool.core.io.FileUtil.appendLines(java.util.Collection, java.lang.String, java.nio.charset.Charset)
将列表写入文件,追加模式
cn.hutool.core.io.FileUtil.appendLines(java.util.Collection, java.io.File, java.nio.charset.Charset)
将列表写入文件,追加模式
cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.lang.String, java.lang.String, boolean)
将列表写入文件
cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.lang.String, java.nio.charset.Charset, boolean)
将列表写入文件
cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.io.File, java.lang.String, boolean)
将列表写入文件
cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.io.File, java.nio.charset.Charset, boolean)
将列表写入文件
cn.hutool.core.io.FileUtil.writeUtf8Map(java.util.Map, java.io.File, java.lang.String, boolean)
将Map写入文件,每个键值对为一行,一行中键与值之间使用kvSeparator分隔
cn.hutool.core.io.FileUtil.writeMap(java.util.Map, java.io.File, java.nio.charset.Charset, java.lang.String, boolean)
将Map写入文件,每个键值对为一行,一行中键与值之间使用kvSeparator分隔
cn.hutool.core.io.FileUtil.writeBytes(byte[], java.lang.String)
写数据到文件中
cn.hutool.core.io.FileUtil.writeBytes(byte[], java.io.File)
写数据到文件中
cn.hutool.core.io.FileUtil.writeBytes(byte[], java.io.File, int, int, boolean)
写入数据到文件
cn.hutool.core.io.FileUtil.writeFromStream(java.io.InputStream, java.io.File)
将流的内容写入文件<br> 此方法会自动关闭输入流
cn.hutool.core.io.FileUtil.writeFromStream(java.io.InputStream, java.io.File, boolean)
将流的内容写入文件
cn.hutool.core.io.FileUtil.writeFromStream(java.io.InputStream, java.lang.String)
将流的内容写入文件<br> 此方法会自动关闭输入流
cn.hutool.core.io.FileUtil.writeToStream(java.io.File, java.io.OutputStream)
将文件写入流中,此方法不会概念比输出流
cn.hutool.core.io.FileUtil.writeToStream(java.lang.String, java.io.OutputStream)
将流的内容写入文件<br>

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeUtf8String(java.lang.String, java.lang.String)

方法描述

将String写入文件,覆盖模式,字符集为UTF-8

支持版本及以上

参数描述:

参数名描述
String content
content 写入的内容
String path
path 文件路径

返回值:

写入的文件

参考案例:

		//将String写入文件,覆盖模式,字符集为UTF-8
		String content="hello 小虚竹";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeUtf8StringTest.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			File file = FileUtil.writeUtf8String(content,path);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

image-202106307409732

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeUtf8String(java.lang.String, java.io.File)

方法描述

将String写入文件,覆盖模式,字符集为UTF-8

支持版本及以上

参数描述:

参数名描述
String content
content 写入的内容
File file
file 文件

返回值:

写入的文件

参考案例:

		//将String写入文件,覆盖模式,字符集为UTF-8
		String content="hello 小虚竹";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeUtf8StringTest.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			File file = FileUtil.writeUtf8String(content,new File(path));
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeString(java.lang.String, java.lang.String, java.lang.String)

方法描述

将String写入文件,覆盖模式

支持版本及以上

参数描述:

参数名描述
String content
content 写入的内容
String path
path 文件路径
String charset
charset 字符集

返回值:

写入的文件

参考案例:

		//将String写入文件,覆盖模式
		String content="hello 小虚竹";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeStringTest.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			 FileUtil.writeString(content,path,CharsetUtil.UTF_8);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

image-2021063094341905

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeString(java.lang.String, java.lang.String, java.nio.charset.Charset)

方法描述

将String写入文件,覆盖模式

支持版本及以上

参数描述:

参数名描述
String content
content 写入的内容
String path
path 文件路径
Charset charset
charset 字符集

返回值:

写入的文件

参考案例:

		//将String写入文件,覆盖模式
		String content="hello 小虚竹";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeStringTest1.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			FileUtil.writeString(content,path,CharsetUtil.CHARSET_UTF_8);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeString(java.lang.String, java.io.File, java.lang.String)

方法描述

将String写入文件,覆盖模式

支持版本及以上

参数描述:

参数名描述
String content
content 写入的内容
File file
file 文件
String charset
charset 字符集

返回值:

被写入的文件

参考案例:

		//将String写入文件,覆盖模式
		String content="hello 小虚竹";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeStringTest2.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			FileUtil.writeString(content,new File(path),CharsetUtil.UTF_8);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeString(java.lang.String, java.io.File, java.nio.charset.Charset)

方法描述

将String写入文件,覆盖模式

支持版本及以上

参数描述:

参数名描述
String content
content 写入的内容
File file
file 文件
Charset charset
charset 字符集

返回值:

被写入的文件

参考案例:

		//将String写入文件,覆盖模式
		String content="hello 小虚竹";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeStringTest2.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			FileUtil.writeString(content,new File(path),CharsetUtil.CHARSET_UTF_8);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

image-2021063095711261

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.appendUtf8String(java.lang.String, java.lang.String)

方法描述

将String写入文件,UTF-8编码追加模式

支持版本及以上

3.1.2

参数描述:

参数名描述
String content
content 写入的内容
String path
path 文件路径

返回值:

写入的文件

参考案例:

		//将String写入文件,追加模式
		String content="hello 小虚竹2";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeStringTest2.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			FileUtil.appendUtf8String(content,path);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

image-2021063095840259

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.appendString(java.lang.String, java.lang.String, java.lang.String)

方法描述

将String写入文件,追加模式

支持版本及以上

参数描述:

参数名描述
String content
content 写入的内容
String path
path 文件路径
String charset
charset 字符集

返回值:

写入的文件

参考案例:

		//将String写入文件,追加模式
		String content="hello 小虚竹2";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeStringTest2.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			FileUtil.appendString(content,path,CharsetUtil.UTF_8);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

image-202106306175

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.appendString(java.lang.String, java.lang.String, java.nio.charset.Charset)

方法描述

将String写入文件,追加模式

支持版本及以上

参数描述:

参数名描述
String content
content 写入的内容
String path
path 文件路径
Charset charset
charset 字符集

返回值:

写入的文件

参考案例:

		//将String写入文件,追加模式
		String content="hello 小虚竹2";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeStringTest2.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			FileUtil.appendString(content,path,CharsetUtil.CHARSET_UTF_8);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.appendUtf8String(java.lang.String, java.io.File)

方法描述

将String写入文件,UTF-8编码追加模式

支持版本及以上

3.1.2

参数描述:

参数名描述
String content
content 写入的内容
File file
file 文件

返回值:

写入的文件

参考案例:

		//将String写入文件,UTF-8编码追加模式
		String content="hello 小虚竹2";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeStringTest2.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			FileUtil.appendUtf8String(content,new File(path));
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.appendString(java.lang.String, java.io.File, java.lang.String)

方法描述

将String写入文件,追加模式

支持版本及以上

参数描述:

参数名描述
String content
content 写入的内容
File file
file 文件
String charset
charset 字符集

返回值:

写入的文件

参考案例:

		//将String写入文件,追加模式
		String content="hello 小虚竹2";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeStringTest2.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			FileUtil.appendString(content,new File(path),CharsetUtil.UTF_8);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.appendString(java.lang.String, java.io.File, java.nio.charset.Charset)

方法描述

将String写入文件,追加模式

支持版本及以上

参数描述:

参数名描述
String content
content 写入的内容
File file
file 文件
Charset charset
charset 字符集

返回值:

写入的文件

参考案例:

		//将String写入文件,追加模式
		String content="hello 小虚竹2";
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeStringTest2.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			FileUtil.appendString(content,new File(path),CharsetUtil.CHARSET_UTF_8);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeUtf8Lines(java.util.Collection, java.lang.String)

方法描述

将列表写入文件,覆盖模式,编码为UTF-8

支持版本及以上

3.2.0

参数描述:

参数名描述
java.util.Collection list
list 列表
String path
path 绝对路径

返回值:

目标文件 集合元素类型

参考案例:

		//将列表写入文件,覆盖模式,编码为UTF-8
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeUtf8LinesTest.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			List<String> list = new ArrayList<>();
			list.add("hello 小虚竹");
			list.add("小虚竹 你真帅");
			FileUtil.writeUtf8Lines(list,path);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

image-20210630801470

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeUtf8Lines(java.util.Collection, java.io.File)

方法描述

将列表写入文件,覆盖模式,编码为UTF-8

支持版本及以上

3.2.0

参数描述:

参数名描述
java.util.Collection list
list 列表
File file
file 绝对路径

返回值:

目标文件 集合元素类型

参考案例:

		//将列表写入文件,覆盖模式,编码为UTF-8
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeUtf8LinesTest.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			List<String> list = new ArrayList<>();
			list.add("hello 小虚竹");
			list.add("小虚竹 你真帅");
			FileUtil.writeUtf8Lines(list,new File(path));
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.lang.String, java.lang.String)

方法描述

将列表写入文件,覆盖模式

支持版本及以上

参数描述:

参数名描述
java.util.Collection list
list 列表
String path
path 绝对路径
String charset
charset 字符集

返回值:

目标文件 集合元素类型

参考案例:

		//将列表写入文件,覆盖模式
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeLinesTest.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			List<String> list = new ArrayList<>();
			list.add("hello 小虚竹");
			list.add("小虚竹 你真帅");
			FileUtil.writeLines(list,path,CharsetUtil.UTF_8);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

image-20210630495

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.lang.String, java.nio.charset.Charset)

方法描述

将列表写入文件,覆盖模式

支持版本及以上

参数描述:

参数名描述
java.util.Collection list
list 列表
String path
path 绝对路径
Charset charset
charset 字符集

返回值:

目标文件 集合元素类型

参考案例:

		//将列表写入文件,覆盖模式
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeLinesTest.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			List<String> list = new ArrayList<>();
			list.add("hello 小虚竹");
			list.add("小虚竹 你真帅");
			FileUtil.writeLines(list,path,CharsetUtil.CHARSET_UTF_8);
		}catch (IORuntimeException e){
			//抛出一个运行时异常(直接停止掉程序)
			throw new RuntimeException("运行时异常",e);
		}

源码解析:

链接:待补充

方法明细

方法名称:cn.hutool.core.io.FileUtil.writeLines(java.util.Collection, java.io.File, java.lang.String)

方法描述

将列表写入文件,覆盖模式

支持版本及以上

4.2.0

参数描述:

参数名描述
java.util.Collection list
list 列表
File file
file 文件
String charset
charset 字符集

返回值:

目标文件 集合元素类型

参考案例:

		//将列表写入文件,覆盖模式
		String path = "C:\\\\Users\\\\Administrator\\\\Desktop\\\\xuzhu\\\\writeLinesTest.txt";
		//path指定路径下的文件如不存在,则创建
		try {
			List<String> list = new ArrayList<>();
			list.add("hello 小虚竹");
			list.add("小虚竹 你真帅");
			FileUtil.writeLines(list,new File(path)9hutool实战:FileUtil 文件工具类(读取文件)

9hutool实战:FileUtil 文件工具类(读取文件)

8hutool实战:FileUtil 文件工具类(获取输入流)

8hutool实战:FileUtil 文件工具类(获取输入流)

10hutool实战:FileUtil 文件工具类(获取输出流)

10hutool实战:FileUtil 文件工具类(获取输出流)