diff --git a/hutool-core/src/main/java/cn/hutool/core/text/csv/CsvWriter.java b/hutool-core/src/main/java/cn/hutool/core/text/csv/CsvWriter.java index 5dbe1f232..314249103 100755 --- a/hutool-core/src/main/java/cn/hutool/core/text/csv/CsvWriter.java +++ b/hutool-core/src/main/java/cn/hutool/core/text/csv/CsvWriter.java @@ -130,11 +130,11 @@ public final class CsvWriter implements Closeable, Flushable, Serializable { * * @param file CSV文件 * @param charset 编码 - * @param isAppend 是否追加 + * @param isAppend 是否追加,append模式下,endingLineBreak自动设置为true * @param config 写出配置,null则使用默认配置 */ public CsvWriter(File file, Charset charset, boolean isAppend, CsvWriteConfig config) { - this(FileUtil.getWriter(file, charset, isAppend), config); + this(FileUtil.getWriter(file, charset, isAppend), isAppend?(config==null?CsvWriteConfig.defaultConfig().setEndingLineBreak(true):config.setEndingLineBreak(true)):config); } /** diff --git a/hutool-core/src/test/java/cn/hutool/core/text/csv/CsvWriterTest.java b/hutool-core/src/test/java/cn/hutool/core/text/csv/CsvWriterTest.java index ed4416209..980a33749 100755 --- a/hutool-core/src/test/java/cn/hutool/core/text/csv/CsvWriterTest.java +++ b/hutool-core/src/test/java/cn/hutool/core/text/csv/CsvWriterTest.java @@ -44,4 +44,20 @@ public class CsvWriterTest { } writer.close(); } + + @Test + @Ignore + public void writeAppendTest(){ + final CsvWriter writer = CsvUtil.getWriter( + FileUtil.file("d:/test/writeAppendTest.csv"), + CharsetUtil.CHARSET_GBK, true); + + writer.writeHeaderLine("name", "gender", "address"); + writer.writeLine("张三", "男", "XX市XX区"); + writer.writeLine("李四", "男", "XX市XX区,01号"); + + writer.writeLine("张三2", "男", "XX市XX区"); + writer.writeLine("李四2", "男", "XX市XX区,01号"); + writer.close(); + } }