From f63acc60589b4384fe45af629bdc545ad83ce823 Mon Sep 17 00:00:00 2001 From: Looly Date: Tue, 6 Jun 2023 06:20:59 +0800 Subject: [PATCH] =?UTF-8?q?CsvWriter=E5=A6=82=E6=9E=9C=E5=BC=80=E5=90=AF?= =?UTF-8?q?=E4=BA=86append=3Dtrue=EF=BC=8C=E9=BB=98=E8=AE=A4=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E5=BC=80=E5=90=AFendingLineBreak=3Dtrue?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/hutool/poi/csv/CsvWriter.java | 9 ++++++--- .../java/org/dromara/hutool/poi/csv/CsvWriterTest.java | 6 +++--- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/hutool-poi/src/main/java/org/dromara/hutool/poi/csv/CsvWriter.java b/hutool-poi/src/main/java/org/dromara/hutool/poi/csv/CsvWriter.java index 476111892..989c926ed 100644 --- a/hutool-poi/src/main/java/org/dromara/hutool/poi/csv/CsvWriter.java +++ b/hutool-poi/src/main/java/org/dromara/hutool/poi/csv/CsvWriter.java @@ -58,7 +58,7 @@ public final class CsvWriter implements Closeable, Flushable, Serializable { */ private boolean isFirstLine = true; - // --------------------------------------------------------------------------------------------------- Constructor start + // region ----- Constructors /** * 构造,覆盖已有文件(如果存在),默认编码UTF-8 @@ -141,7 +141,10 @@ public final class CsvWriter implements Closeable, Flushable, Serializable { * @param config 写出配置,null则使用默认配置 */ public CsvWriter(final File file, final Charset charset, final boolean isAppend, final CsvWriteConfig config) { - this(FileUtil.getWriter(file, charset, isAppend), isAppend?(config==null?CsvWriteConfig.defaultConfig().setEndingLineBreak(true):config.setEndingLineBreak(true)):config); + this(FileUtil.getWriter(file, charset, isAppend), + // https://gitee.com/dromara/hutool/pulls/1011 + isAppend?(config==null?CsvWriteConfig.defaultConfig().setEndingLineBreak(true) + :config.setEndingLineBreak(true)):config); } /** @@ -163,7 +166,7 @@ public final class CsvWriter implements Closeable, Flushable, Serializable { this.writer = (writer instanceof BufferedWriter) ? writer : new BufferedWriter(writer); this.config = ObjUtil.defaultIfNull(config, CsvWriteConfig::defaultConfig); } - // --------------------------------------------------------------------------------------------------- Constructor end + // endregion /** * 设置是否始终使用文本分隔符,文本包装符,默认false,按需添加 diff --git a/hutool-poi/src/test/java/org/dromara/hutool/poi/csv/CsvWriterTest.java b/hutool-poi/src/test/java/org/dromara/hutool/poi/csv/CsvWriterTest.java index 6028f85b5..28cf4be05 100644 --- a/hutool-poi/src/test/java/org/dromara/hutool/poi/csv/CsvWriterTest.java +++ b/hutool-poi/src/test/java/org/dromara/hutool/poi/csv/CsvWriterTest.java @@ -37,7 +37,7 @@ public class CsvWriterTest { final CsvWriter writer = CsvUtil.getWriter(fileName, CharsetUtil.UTF_8); final List list = new ArrayList<>(); for (int i = 0; i < 10000; i++) { - list.add(i+""); + list.add(String.valueOf(i)); } Console.log("{} : {}", fileName, list.size()); for (final String s : list) { @@ -65,11 +65,11 @@ public class CsvWriterTest { } @Test - @Ignore + @Disabled public void writeAppendTest(){ final CsvWriter writer = CsvUtil.getWriter( FileUtil.file("d:/test/writeAppendTest.csv"), - CharsetUtil.CHARSET_GBK, true); + CharsetUtil.GBK, true); writer.writeHeaderLine("name", "gender", "address"); writer.writeLine("张三", "男", "XX市XX区");