From 46e2d3982e238b10b2c8810f37d3540a85c34981 Mon Sep 17 00:00:00 2001 From: Looly Date: Tue, 30 Jul 2024 15:32:25 +0800 Subject: [PATCH] add test --- .../dromara/hutool/poi/csv/Pr1244Test.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 hutool-poi/src/test/java/org/dromara/hutool/poi/csv/Pr1244Test.java diff --git a/hutool-poi/src/test/java/org/dromara/hutool/poi/csv/Pr1244Test.java b/hutool-poi/src/test/java/org/dromara/hutool/poi/csv/Pr1244Test.java new file mode 100644 index 000000000..c1ee2750e --- /dev/null +++ b/hutool-poi/src/test/java/org/dromara/hutool/poi/csv/Pr1244Test.java @@ -0,0 +1,25 @@ +package org.dromara.hutool.poi.csv; + +import org.junit.jupiter.api.Test; + +import java.io.StringReader; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * 按照 https://datatracker.ietf.org/doc/html/rfc4180#section-2
+ * 如果字段正文中出现双引号,需要使用两个双引号表示转义 + */ +public class Pr1244Test { + @Test + 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)); + } +}