我需要使用java实现数据导出器到CSV。它必须满足下一个要求:
1)它必须是可配置的(例如,顺序或列数不得硬编码)
2)此数据可以使用不同的语言(也可以是中文),并且生成的CSV文件必须采用UTF-8编码。
我从来没有处理过这种任务,所以我只想问一下是否有人可以给我一些有用的建议:配置数据导出器和编码数据的最佳实践是什么。
我已经找到了以下关于不同的 csv 导出器/导入器 CSV API for Java 的讨论,但如果您有要添加的内容,请不要犹豫,;)
我也听说过一些关于流口水的事情,但还不知道它能成为我的情况的解决方案吗?
非常感谢您的回复!
CSV是一种非常简单的格式。这基本上是编码/解码的要点。
编码:
- 如果该值不包含逗号或换行符,则按原样发出。
- 如果值包含逗号或换行符,请将所有
/
替换为//
,将所有"
替换为/"
,将其括在引号中,然后发出。 - 用逗号分隔字段,用换行符分隔记录。
译码:
- 如果该值不以引号开头,请扫描直到点击逗号。
- 如果值以引号开头,请浏览,将
//
替换为/
,/"
替换为"
,直到到达前面没有单个反斜杠的引号。
您不必担心编码;Java应该可以很好地处理这个问题。但实际上,除非这是专门用于学校分配或类似的东西,否则您应该使用预先存在的CSV库。