mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-07-21 15:09:48 +08:00
增加CsvWriteConfig.setEndingLineBreak配置项
This commit is contained in:
@@ -21,6 +21,12 @@ public class CsvWriteConfig extends CsvConfig<CsvWriteConfig> implements Seriali
|
||||
*/
|
||||
protected char[] lineDelimiter = {CharUtil.CR, CharUtil.LF};
|
||||
|
||||
/**
|
||||
* 文件末尾是否添加换行符<br>
|
||||
* 按照https://datatracker.ietf.org/doc/html/rfc4180#section-2 规范,末尾换行符可有可无。
|
||||
*/
|
||||
protected boolean endingLineBreak;
|
||||
|
||||
/**
|
||||
* 默认配置
|
||||
*
|
||||
@@ -51,4 +57,16 @@ public class CsvWriteConfig extends CsvConfig<CsvWriteConfig> implements Seriali
|
||||
this.lineDelimiter = lineDelimiter;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 文件末尾是否添加换行符<br>
|
||||
* 按照https://datatracker.ietf.org/doc/html/rfc4180#section-2 规范,末尾换行符可有可无。
|
||||
*
|
||||
* @param endingLineBreak 文件末尾是否添加换行符
|
||||
* @return this
|
||||
*/
|
||||
public CsvWriteConfig setEndingLineBreak(boolean endingLineBreak) {
|
||||
this.endingLineBreak = endingLineBreak;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
@@ -334,8 +334,13 @@ public final class CsvWriter implements Closeable, Flushable, Serializable {
|
||||
return this;
|
||||
}
|
||||
|
||||
@SuppressWarnings("resource")
|
||||
@Override
|
||||
public void close() {
|
||||
if(this.config.endingLineBreak){
|
||||
//https://gitee.com/dromara/hutool/issues/I75K5G
|
||||
writeLine();
|
||||
}
|
||||
IoUtil.close(this.writer);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user