java - 如何在不使用引号字符的分隔文件上使用 Super CSV?

标签 java csv supercsv

我正在使用 Super CSV 解析管道(“|”)分隔的文件。该文件不使用“文本限定符”,或者 Super CSV 所说的引号字符。问题是 super CSV requires引号字符。我看不到跳过这个或提供空字符的方法。目前我正在传递一些古怪的 unicode 字符,希望它永远不会出现在输入文件中。

有没有办法让 Super CSV 在不使用引号字符的情况下解析文件?

最佳答案

我猜您无法控制要解析的文件的写入方式,并且它永远不会在数据中包含嵌入的管道字符?

我能看到的解决方案是:

  • 使用一个永远不会出现在您的文件中的字符(如您所建议的)。这有点狡猾,但会奏效。

  • 在构建 Reader 时提供您自己的分词器(您可以复制 Super CSV implementation 并只删除引用功能)。

  • 给我们发一个feature request我们会考虑添加它。这可能只是添加另一个在解析时禁用引用的首选项的情况。

我会考虑一下,看看我是否能想到实现此目标的最佳方法。

关于java - 如何在不使用引号字符的分隔文件上使用 Super CSV?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13170345/

相关文章:

java - 使用 Java SDK 的 AWS DataPipeline EvaluateExpression

wpf - 将 WPF 网格控件数据绑定(bind)到 CSV 文件

python - 在 Python 中写入和读取相同的 csv 文件

java - 使用 super-CSV 读取嵌套 POJO

java - Groovy 元类与 Java 8 的互操作性

java - 尝试在带有 unboundid LDAP SDK 的 scala 中更改密码时,如何解决 "WILL_NOT_PERFORM"MS AD 回复?

Swift:使用命令行工具将 .strings 文件解析为 .csv 文件

java - Excel 不显示使用 Super CSV 创建的 CSV 文件中的变音字符

Java - 将 hashmap 写入 csv 文件

java - 如何从方法更改静态类变量的值,然后从其他方法获取它?