如何使FileUtils附加而不是覆盖文本文件

时间:2016-04-29 17:34:39

标签: java file apache-commons-io

我使用以下内容将StringBuilder写入现有文本文件。

FileUtils.writeStringToFile(file, sb.toString(), StandardCharsets.UTF_8);

问题是它会将我想要追加 sb.toString()的文件覆盖到file的现有内容。如何解决这个问题?

3 个答案:

答案 0 :(得分:2)

它已在2.1版本的Apache IO中实现。要将字符串附加到文件中,只需将true作为函数中的附加参数传递:

示例:

 FileUtils.writeStringToFile(file, stringBuilder.toString(), true);

答案 1 :(得分:1)

假设您引用了org.apache.commons.io.FileUtils,那么会出现一个带有boolean追加参数的重载变体:

FileUtils.writeStringToFile(file, sb.toString(), StandardCharsets.UTF_8, true);
// Here -----------------------------------------------------------------^

答案 2 :(得分:0)

只需使用append boolean:

调用该方法

writeStringToFile(File file, String data, Charset encoding, boolean append)

FileUtils.writeStringToFile(file, sb.toString(), StandardCharsets.UTF_8, true);