【问题标题】:Opening CSV file as Notepad then new line not seen将 CSV 文件作为记事本打开,然后看不到新行
【发布时间】:2018-03-07 14:49:15
【问题描述】:

我的 Java 代码生成 csv 文件。当我将此 CSV 文件作为记事本打开时,我看不到新行。我只看到一行数据。 由于这个原因,我无法添加这个文件的 SQL 数据库。

我该如何解决这个问题? 例如 test.csv 文件:

TerminalSerialNo    IMEI    Site-Ref
77EC0067C8A1BA6462FCA25F8B1DFBE289F6A3EE    null    SIT-3
01B406234550B1A688000050BF7A60E2    null    SIT-3
19B32E9399CB51FACF858E126F9C7684578A8BAC    null    SIT-7

当我用记事本打开这个文件时:

TerminalSerialNo,IMEI,Site-Ref,Site-Name77EC0067C8A1BA6462FCA25F8B1DFBE289F6A3EE,null,SIT3,01B406234550B1A688000050BF7A60E2,null,SIT-3,19B32E9399CB51FACF858E126F9C7684578A8BAC,null,SIT-7

如何在记事本中以 CSV 文件形式查看新行数据?

最好的问候

【问题讨论】:

  • 试试notepad++和vs-code等其他文本编辑器
  • 如果没有看到任何代码就很难判断,但我的猜测是您正在使用 Unix 样式的换行符 (\n) 保存文件,并且您正在 Windows 上打开文件,而记事本需要 Windows-样式换行符 (\r\n)。您可以使用 Notepad++ 等现代文本编辑器进行检查。
  • 在超级用户 SE 上通过快速的 google 搜索可以得到这个答案:superuser.com/questions/362087/notepad-ignoring-linebreaks 感谢 Paul 那里的答案。
  • 我知道,当记事本 ++ 似乎没问题。但我想在记事本中看到这样的内容。但是我想在这个记事本中解决的问题。如果我解决了,我很容易在 SQL 中添加这个文件。否则,SQL 在上传数据时会报错。
  • FileWriter writer = new FileWriter("output.csv"); // headers writer.write("TerminalSerialNo,IMEI,Site-Ref,Site-Name\n"); writer.flush(); // data for(String[] arr: list) { String appender = ""; for(String s : arr){ writer.write(appender + s); appender = ","; } writer.write("\n"); writer.flush(); } writer.close();

标签: java csv notepad


【解决方案1】:

仅在记事本中?

您的 Java 代码是否使用换行符?

\n

【讨论】:

  • 是的,仅在记事本中,我添加了我的 Java 代码。我也使用新行 \n.
【解决方案2】:

使用 append("\n") 并且不要忘记关闭 writer。

【讨论】:

    【解决方案3】:

    是的,我只在记事本上遇到这个问题。我使用“\n”和我的 Java 代码,如下所示:` FileWriter writer = new FileWriter("output.csv");

        // headers
        writer.write("TerminalSerialNo,IMEI,Site-Ref,Site-Name\n");
        writer.flush();
    
        // data
        for(String[] arr: list) {
            String appender = "";
            for(String s : arr){
                writer.write(appender + s);
                appender = ",";
    
            }
            writer.write("\n");
            writer.flush();
        }
        writer.close();
    
    
        `
    

    【讨论】:

    • 添加 \r\n 然后工作。感谢您的支持!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-21
    • 1970-01-01
    • 1970-01-01
    • 2016-11-24
    • 2019-02-25
    • 2019-06-01
    相关资源
    最近更新 更多