CSVPrinter заключает в кавычки значение, даже если у него нет разделителя или разделителя строк
Когда для CSVFormat quoteMode установлено значение MINIMAL, оно должно заключать в кавычки значение только в том случае, если значение содержит разделитель (,) или разделитель строк '\n' в соответствии с javadoc. Но он заключает в кавычки, даже если значение содержит хэш (#). Пожалуйста, смотрите ниже пример кода
@Test
public void testCSV() throws IOException {
String[] row = new String[]{"simple text","##5##"};
CSVFormat CSV_FORMAT = CSVFormat.DEFAULT.withRecordSeparator("\n").withQuoteMode(QuoteMode.MINIMAL);
StringWriter stringWriter = new StringWriter(1024);
CSVPrinter csvPrinter = new CSVPrinter(stringWriter, CSV_FORMAT);
csvPrinter.printRecord(row);
System.out.println("sw : " + stringWriter.getBuffer().toString());
csvPrinter.close();
stringWriter.close();
}
вывод: sw: простой текст,"##5##"
Пожалуйста, предложите способ, которым я могу избежать цитирования в таких случаях.