[英]How can I get a CSVPrinter to quote fields with spaces?
我正在使用來自Apache Commons的CSVPrinter類 ,以便輸出CSV文件。 我想發生的是,如果給定的字段中包含任何空格,則將其封裝在引號中。 但是,例如,如果它只是一長串數字或日期字符串,則不需要用引號引起來。
不幸的是QuoteMode枚舉似乎很有限。 它提供以下四個選擇:
ALL
引用所有字段。 MINIMAL
引號字段包含特殊字符,例如定界符,引號字符或行分隔符中的任何字符。 NON_NUMERIC
引用所有非數字字段。 NONE
不引用字段。 MINIMAL
選項似乎最接近我要在此處執行的操作,但是由於空格字符不是行分隔符的一部分,因此無法正常工作。 有什么方法可以配置CSVPrinter對象以引用其中包含空格的字段?
CSVPrinter不是那么靈活,它也是final
因此您不能覆蓋打印實現。
我建議您找到一個不同的csv庫或查看CSVPrinter
的源代碼,並根據自己的要求實現自己的版本。 絕對不是CSV格式要求用空格引用字符串。 符合格式的任何實現都應該能夠讀取字符串中帶有空格的字符串(且不加引號)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.