From 9ce821650f0cf902737ea752ed7a96560d33aa97 Mon Sep 17 00:00:00 2001 From: Looly Date: Tue, 30 Jul 2024 15:32:30 +0800 Subject: [PATCH] add test --- .../cn/hutool/core/text/csv/Pr1244Test.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 hutool-core/src/test/java/cn/hutool/core/text/csv/Pr1244Test.java diff --git a/hutool-core/src/test/java/cn/hutool/core/text/csv/Pr1244Test.java b/hutool-core/src/test/java/cn/hutool/core/text/csv/Pr1244Test.java new file mode 100644 index 000000000..37e8b35e5 --- /dev/null +++ b/hutool-core/src/test/java/cn/hutool/core/text/csv/Pr1244Test.java @@ -0,0 +1,25 @@ +package cn.hutool.core.text.csv; + +import org.junit.Test; + +import java.io.StringReader; + +import static org.junit.Assert.assertEquals; + +/** + * 按照 https://datatracker.ietf.org/doc/html/rfc4180#section-2
+ * 如果字段正文中出现双引号,需要使用两个双引号表示转义 + */ +public class Pr1244Test { + @Test + public void csvReadTest() { + final String csv = "a,q\"\"e,d,f"; + final CsvReader reader = CsvUtil.getReader(new StringReader(csv)); + final CsvData read = reader.read(); + assertEquals(4, read.getRow(0).size()); + assertEquals("a", read.getRow(0).get(0)); + assertEquals("q\"e", read.getRow(0).get(1)); + assertEquals("d", read.getRow(0).get(2)); + assertEquals("f", read.getRow(0).get(3)); + } +}