mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-05-09 23:51:34 +08:00
fix bug
This commit is contained in:
parent
95ccaee034
commit
61b6c63470
@ -18,6 +18,7 @@
|
|||||||
* 【core 】 修复UrlPath空白path多/问题(issue#I49KAL@Gitee)
|
* 【core 】 修复UrlPath空白path多/问题(issue#I49KAL@Gitee)
|
||||||
* 【core 】 修复ServletUtil写出文件时未添加双引号导致逗号等特殊符号引起的问题(issue#I4P1BF@Gitee)
|
* 【core 】 修复ServletUtil写出文件时未添加双引号导致逗号等特殊符号引起的问题(issue#I4P1BF@Gitee)
|
||||||
* 【core 】 NumberUtil增加equals重载解决long传入判断问题(pr#2064@Github)
|
* 【core 】 NumberUtil增加equals重载解决long传入判断问题(pr#2064@Github)
|
||||||
|
* 【core 】 修复CsvParser行号有误问题(pr#2065@Github)
|
||||||
|
|
||||||
-------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------
|
||||||
# 5.7.18 (2021-12-25)
|
# 5.7.18 (2021-12-25)
|
||||||
|
@ -10,6 +10,7 @@ import lombok.Data;
|
|||||||
import org.junit.Assert;
|
import org.junit.Assert;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.Ignore;
|
import org.junit.Ignore;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@ -26,7 +27,7 @@ public class CsvReaderTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void readMapListTest(){
|
public void readMapListTest() {
|
||||||
final CsvReader reader = CsvUtil.getReader();
|
final CsvReader reader = CsvUtil.getReader();
|
||||||
final List<Map<String, String>> result = reader.readMapList(
|
final List<Map<String, String>> result = reader.readMapList(
|
||||||
ResourceUtil.getUtf8Reader("test_bean.csv"));
|
ResourceUtil.getUtf8Reader("test_bean.csv"));
|
||||||
@ -48,7 +49,7 @@ public class CsvReaderTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void readAliasMapListTest(){
|
public void readAliasMapListTest() {
|
||||||
final CsvReadConfig csvReadConfig = CsvReadConfig.defaultConfig();
|
final CsvReadConfig csvReadConfig = CsvReadConfig.defaultConfig();
|
||||||
csvReadConfig.addHeaderAlias("姓名", "name");
|
csvReadConfig.addHeaderAlias("姓名", "name");
|
||||||
|
|
||||||
@ -73,7 +74,7 @@ public class CsvReaderTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void readBeanListTest(){
|
public void readBeanListTest() {
|
||||||
final CsvReader reader = CsvUtil.getReader();
|
final CsvReader reader = CsvUtil.getReader();
|
||||||
final List<TestBean> result = reader.read(
|
final List<TestBean> result = reader.read(
|
||||||
ResourceUtil.getUtf8Reader("test_bean.csv"), TestBean.class);
|
ResourceUtil.getUtf8Reader("test_bean.csv"), TestBean.class);
|
||||||
@ -95,7 +96,7 @@ public class CsvReaderTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
private static class TestBean{
|
private static class TestBean {
|
||||||
@Alias("姓名")
|
@Alias("姓名")
|
||||||
private String name;
|
private String name;
|
||||||
private String gender;
|
private String gender;
|
||||||
@ -105,7 +106,7 @@ public class CsvReaderTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Ignore
|
@Ignore
|
||||||
public void readTest2(){
|
public void readTest2() {
|
||||||
final CsvReader reader = CsvUtil.getReader();
|
final CsvReader reader = CsvUtil.getReader();
|
||||||
final CsvData read = reader.read(FileUtil.file("d:/test/test.csv"));
|
final CsvData read = reader.read(FileUtil.file("d:/test/test.csv"));
|
||||||
for (CsvRow strings : read) {
|
for (CsvRow strings : read) {
|
||||||
@ -115,7 +116,7 @@ public class CsvReaderTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Ignore
|
@Ignore
|
||||||
public void readTest3(){
|
public void readTest3() {
|
||||||
final CsvReadConfig csvReadConfig = CsvReadConfig.defaultConfig();
|
final CsvReadConfig csvReadConfig = CsvReadConfig.defaultConfig();
|
||||||
csvReadConfig.setContainsHeader(true);
|
csvReadConfig.setContainsHeader(true);
|
||||||
final CsvReader reader = CsvUtil.getReader(csvReadConfig);
|
final CsvReader reader = CsvUtil.getReader(csvReadConfig);
|
||||||
@ -126,14 +127,15 @@ public class CsvReaderTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void lineNoTest(){
|
public void lineNoTest() {
|
||||||
CsvReader reader = new CsvReader();
|
CsvReader reader = new CsvReader();
|
||||||
CsvData data = reader.read(ResourceUtil.getReader("test_lines.csv", CharsetUtil.CHARSET_UTF_8));
|
CsvData data = reader.read(ResourceUtil.getReader("test_lines.csv", CharsetUtil.CHARSET_UTF_8));
|
||||||
Assert.assertEquals(1, data.getRow(0).getOriginalLineNumber());
|
Assert.assertEquals(1, data.getRow(0).getOriginalLineNumber());
|
||||||
Assert.assertEquals("a,b,c,d", CollUtil.join(data.getRow(0), ","));
|
Assert.assertEquals("a,b,c,d", CollUtil.join(data.getRow(0), ","));
|
||||||
|
|
||||||
Assert.assertEquals(4, data.getRow(2).getOriginalLineNumber());
|
Assert.assertEquals(4, data.getRow(2).getOriginalLineNumber());
|
||||||
Assert.assertEquals("q,w,e,r,我是一段\n带换行的内容", CollUtil.join(data.getRow(2), ",").replace("\r", ""));
|
Assert.assertEquals("q,w,e,r,我是一段\n带换行的内容",
|
||||||
|
CollUtil.join(data.getRow(2), ",").replace("\r", ""));
|
||||||
|
|
||||||
// 文件中第3行数据,对应原始行号是6(从0开始)
|
// 文件中第3行数据,对应原始行号是6(从0开始)
|
||||||
Assert.assertEquals(6, data.getRow(3).getOriginalLineNumber());
|
Assert.assertEquals(6, data.getRow(3).getOriginalLineNumber());
|
||||||
@ -141,7 +143,7 @@ public class CsvReaderTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void lineLimitTest(){
|
public void lineLimitTest() {
|
||||||
// 从原始第2行开始读取
|
// 从原始第2行开始读取
|
||||||
CsvReader reader = new CsvReader(CsvReadConfig.defaultConfig().setBeginLineNo(2));
|
CsvReader reader = new CsvReader(CsvReadConfig.defaultConfig().setBeginLineNo(2));
|
||||||
CsvData data = reader.read(ResourceUtil.getReader("test_lines.csv", CharsetUtil.CHARSET_UTF_8));
|
CsvData data = reader.read(ResourceUtil.getReader("test_lines.csv", CharsetUtil.CHARSET_UTF_8));
|
||||||
@ -150,7 +152,8 @@ public class CsvReaderTest {
|
|||||||
Assert.assertEquals("1,2,3,4", CollUtil.join(data.getRow(0), ","));
|
Assert.assertEquals("1,2,3,4", CollUtil.join(data.getRow(0), ","));
|
||||||
|
|
||||||
Assert.assertEquals(4, data.getRow(1).getOriginalLineNumber());
|
Assert.assertEquals(4, data.getRow(1).getOriginalLineNumber());
|
||||||
Assert.assertEquals("q,w,e,r,我是一段\n带换行的内容", CollUtil.join(data.getRow(1), ",").replace("\r", ""));
|
Assert.assertEquals("q,w,e,r,我是一段\n带换行的内容",
|
||||||
|
CollUtil.join(data.getRow(1), ",").replace("\r", ""));
|
||||||
|
|
||||||
// 文件中第3行数据,对应原始行号是6(从0开始)
|
// 文件中第3行数据,对应原始行号是6(从0开始)
|
||||||
Assert.assertEquals(6, data.getRow(2).getOriginalLineNumber());
|
Assert.assertEquals(6, data.getRow(2).getOriginalLineNumber());
|
||||||
@ -158,13 +161,14 @@ public class CsvReaderTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void lineLimitWithHeaderTest(){
|
public void lineLimitWithHeaderTest() {
|
||||||
// 从原始第2行开始读取
|
// 从原始第2行开始读取
|
||||||
CsvReader reader = new CsvReader(CsvReadConfig.defaultConfig().setBeginLineNo(2).setContainsHeader(true));
|
CsvReader reader = new CsvReader(CsvReadConfig.defaultConfig().setBeginLineNo(2).setContainsHeader(true));
|
||||||
CsvData data = reader.read(ResourceUtil.getReader("test_lines.csv", CharsetUtil.CHARSET_UTF_8));
|
CsvData data = reader.read(ResourceUtil.getReader("test_lines.csv", CharsetUtil.CHARSET_UTF_8));
|
||||||
|
|
||||||
Assert.assertEquals(4, data.getRow(0).getOriginalLineNumber());
|
Assert.assertEquals(4, data.getRow(0).getOriginalLineNumber());
|
||||||
Assert.assertEquals("q,w,e,r,我是一段\n带换行的内容", CollUtil.join(data.getRow(0), ",").replace("\r", ""));
|
Assert.assertEquals("q,w,e,r,我是一段\n带换行的内容",
|
||||||
|
CollUtil.join(data.getRow(0), ",").replace("\r", ""));
|
||||||
|
|
||||||
// 文件中第3行数据,对应原始行号是6(从0开始)
|
// 文件中第3行数据,对应原始行号是6(从0开始)
|
||||||
Assert.assertEquals(6, data.getRow(1).getOriginalLineNumber());
|
Assert.assertEquals(6, data.getRow(1).getOriginalLineNumber());
|
||||||
@ -172,7 +176,7 @@ public class CsvReaderTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void customConfigTest(){
|
public void customConfigTest() {
|
||||||
final CsvReader reader = CsvUtil.getReader(
|
final CsvReader reader = CsvUtil.getReader(
|
||||||
CsvReadConfig.defaultConfig()
|
CsvReadConfig.defaultConfig()
|
||||||
.setTextDelimiter('\'')
|
.setTextDelimiter('\'')
|
||||||
@ -185,7 +189,7 @@ public class CsvReaderTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void readDisableCommentTest(){
|
public void readDisableCommentTest() {
|
||||||
final CsvReader reader = CsvUtil.getReader(CsvReadConfig.defaultConfig().disableComment());
|
final CsvReader reader = CsvUtil.getReader(CsvReadConfig.defaultConfig().disableComment());
|
||||||
final CsvData read = reader.read(ResourceUtil.getUtf8Reader("test.csv"));
|
final CsvData read = reader.read(ResourceUtil.getUtf8Reader("test.csv"));
|
||||||
final CsvRow row = read.getRow(0);
|
final CsvRow row = read.getRow(0);
|
||||||
@ -194,7 +198,7 @@ public class CsvReaderTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Ignore
|
@Ignore
|
||||||
public void streamTest(){
|
public void streamTest() {
|
||||||
final CsvReader reader = CsvUtil.getReader(ResourceUtil.getUtf8Reader("test_bean.csv"));
|
final CsvReader reader = CsvUtil.getReader(ResourceUtil.getUtf8Reader("test_bean.csv"));
|
||||||
reader.stream().limit(2).forEach(Console::log);
|
reader.stream().limit(2).forEach(Console::log);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user