【问题标题】:Get raw record in Apache CSV获取 Apache CSV 中的原始记录
【发布时间】:2016-07-04 19:57:03
【问题描述】:

使用Apache CSV时如何获取原始记录,即csv文件中的行作为字符串

【问题讨论】:

    标签: csv apache-commons-csv


    【解决方案1】:

    可以使用不同的 CSV 格式将其归档到您的要求。看看下面哪一个适合你。

    可用格式如下

    CSV格式默认 说明:标准逗号分隔格式,符合 RFC4180 规范,但允许空行。

    CSVFormat RFC4180 描述:由 RFC4180 规范定义的逗号分隔格式 参考:https://www.rfc-editor.org/rfc/rfc4180

    CSV格式EXCEL 说明:Excel 文件格式(使用逗号作为值分隔符)。请注意,Excel 使用的实际值分隔符取决于区域设置,可能需要自定义此格式以适应您的区域设置。

    CSV 格式 TDF 说明:制表符分隔格式。

    CSVFormat MYSQL 说明:SELECT INTO OUTFILE 和代码LOAD DATA INFILE 操作使用的默认 MySQL 格式。这是一种以 LF 字符作为行分隔符的制表符分隔格式。值不被引用,特殊字符用 '' 转义。 参考:http://dev.mysql.com/doc/refman/5.1/en/load-data.html

    此外,除了标准的 CSVFormat 您可以根据需要使用多种方法。

    1. withAllowMissingColumnNames() - 将格式的缺失列名行为设置为 true
    2. withAllowMissingColumnNames(boolean allowMissingColumnNames) - 设置格式的缺失列名行为。
    3. withCommentMarker(char commentMarker) - 将格式的注释开始标记设置为指定字符。
    4. withCommentMarker(Character commentMarker) - 将格式的注释开始标记设置为指定字符。
    5. withDelimiter(char delimiter) - 将格式的分隔符设置为指定字符。
    6. withEscape(char escape) - 将格式的转义字符设置为指定字符。
    7. withEscape(Character escape) - 将格式的转义字符设置为指定字符。
    8. withHeader(ResultSet resultSet) - 设置格式的标题。
    9. withHeader(ResultSetMetaData metaData) - 设置格式的标题。
    10. withHeader(String... header) - 设置格式的标题。
    11. withHeaderComments(Object... headerComments) - 设置格式的标题 cmets。
    12. withIgnoreEmptyLines() - 将格式的空行跳过行为设置为 true。
    13. withIgnoreEmptyLines(boolean ignoreEmptyLines) - 设置格式的空行跳过行为。
    14. withIgnoreSurroundingSpaces() - 将格式的修剪行为设置为 true。
    15. withIgnoreSurroundingSpaces(boolean ignoreSurroundingSpaces) - 设置格式的修剪行为。
    16. withNullString(String nullString) - 对输入和输出字符串执行与 null 之间的转换。
    17. withQuote(char quoteChar) - 将格式的quoteChar设置为指定字符。
    18. withQuote(Character quoteChar) - 将格式的quoteChar设置为指定字符。
    19. withQuoteMode(QuoteMode quoteModePolicy) - 将格式的输出报价策略设置为指定值。
    20. withRecordSeparator(char recordSeparator) - 将格式的记录分隔符设置为指定字符。
    21. withRecordSeparator(String recordSeparator) - 将格式的记录分隔符设置为指定的字符串。

    【讨论】:

    • 感谢您的描述和解释
    猜你喜欢
    • 1970-01-01
    • 2021-06-09
    • 2011-07-26
    • 1970-01-01
    • 2022-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-01
    相关资源
    最近更新 更多