通过java输出CSV

通过java输出CSV,java,excel,jakarta-ee,csv,Java,Excel,Jakarta Ee,Csv,我必须输出一些内容作为CSV文件,有时会打开使用 类似ms excel的应用程序,但其他应用程序也将打开相同的csv。 现在,如果我使用ms excel打开csv文件(尽管excel是 不是查看CSV的正确应用程序)- 如果某个特定单元格有新行,csv会将该记录作为一个新行在该单元格中打断 如果我们添加双引号或逗号等字符,它会再次将其视为另一列 csv的格式为- "header1", "header2", "header3" "column1", "column2", "column3" ...

我必须输出一些内容作为CSV文件,有时会打开使用 类似ms excel的应用程序,但其他应用程序也将打开相同的csv。 现在,如果我使用ms excel打开csv文件(尽管excel是 不是查看CSV的正确应用程序)-

  • 如果某个特定单元格有新行,csv会将该记录作为一个新行在该单元格中打断
  • 如果我们添加双引号或逗号等字符,它会再次将其视为另一列
  • csv的格式为-

    "header1", "header2", "header3"
    "column1", "column2", "column3"
    ....
    "columnN", "columnN", "columnN"
    

    我的问题是,我想添加像
    {“'、|新行(0x09/0x0a等)这样的字符
    等,但不破坏数据完整性。我正在使用java构建csv内容。有谁能提供任何解决方案吗?

    您是否尝试过在要添加到单元格中的字符之前使用Esc“\”。

    我建议查看openscv库的使用。它会处理特殊字符的转义,这样您就不会出现这种情况需要注意这一点。这会将转义字符附加到列中。