[ 
https://issues.apache.org/jira/browse/CSV-227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18061418#comment-18061418
 ] 

Makarand Hinge commented on CSV-227:
------------------------------------

Hi [~ggregory],
I reviewed and ran JiraCsv227Test locally.
The test passes and correctly verifies that Unicode values in the first column 
are not unnecessarily quoted under QuoteMode.MINIMAL.

This appears to resolve the issue. Thank you for adding the test.
!Screenshot from 2026-02-26 23-08-12.png! !Screenshot from 2026-02-26 
23-07-16.png!

> first column always quoting when multilingual language, when not on second 
> column
> ---------------------------------------------------------------------------------
>
>                 Key: CSV-227
>                 URL: https://issues.apache.org/jira/browse/CSV-227
>             Project: Commons CSV
>          Issue Type: Bug
>          Components: Parser
>    Affects Versions: 1.5
>            Reporter: Jisun, Shin
>            Priority: Major
>         Attachments: Screenshot from 2026-02-26 23-07-16.png, Screenshot from 
> 2026-02-26 23-08-12.png
>
>
> when including multilingual  character (utf-8 encoding),
> CSVPrinter always quote only first column, not other columns.
>  
> {code:java}
> //  example code
> CSVFormat format = CSVFormat.DEFAULT.withQuoteMode(QuoteMode.MINIMAL);
> CSVPrinter printer = new CSVPrinter(System.out, format);
> List<String[]> temp = new ArrayList<String[]>();
> temp.add(new String[] { "ㅁㅎㄷㄹ", "ㅁㅎㄷㄹ", "", "test2" });
> temp.add(new String[] { "한글3", "hello3", "3한글3", "test3" });
> temp.add(new String[] { "", "hello4", "", "test4" });
> for (String[] temp1 : temp) {
> printer.printRecord(temp1);
> }
> printer.close();
> {code}
>  
> result =>
> "ㅁㅎㄷㄹ",ㅁㅎㄷㄹ,,test2
> "한글3",hello3,3한글3,test3
> "",hello4,,test4
>  
> i found the code.
> multilingual charaters are out of  0x7E. first record and multilinguage  
> always print quotes.
>   
> {code:java}
> // CSVFormat.class
> ...
> 1173: char c = value.charAt(pos);
> 1174: 
> 1175: // RFC4180 (https://tools.ietf.org/html/rfc4180) TEXTDATA = %x20-21 / 
> %x23-2B / %x2D-7E
> 1176: if (newRecord && (c < 0x20 || c > 0x21 && c < 0x23 || c > 0x2B && c < 
> 0x2D || c > 0x7E)) {
> 1177: quote = true;
> 1178: } else if (c <= COMMENT) {
> ...{code}
>  
> would you fix this bug?
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to