简体   繁体   English

在Java中将数据写入CSV文件时需要帮助

[英]Need help in writing data to csv file in java

I am using the following code for appending data to a csv file using java: 我正在使用以下代码使用java将数据附加到csv文件:

fw.append("Company Name");
fw.append(',');
fw.append(',');
fw.append(',');
fw.append("Addres");
fw.append(',');
fw.append("Phones");
fw.append(',');
fw.append("Faxes");
fw.append(',');
fw.append("Websites");
fw.append(',');
fw.append('\n');
fw.append(companyName);
fw.append(',');
fw.append(address);
fw.append(',');
fw.append(phones);
fw.append(',');
fw.append(faxes);
fw.append(',');
fw.append(websites);
fw.append(',');
fw.append('\n');
fw.flush();

But I am not getting the result in the csv file in the proper format as required as per the code above specified. 但是我无法按照上面指定的代码以要求的正确格式在csv文件中得到结果。

Please help me in solving the problem. 请帮助我解决问题。

Thanks in advance. 提前致谢。

Regards 问候

Instead of doing this, consider leveraging an open source solution that already addresses the generic CSV writing problem: 而不是这样做,请考虑利用已经解决了通用CSV编写问题的开源解决方案:

http://opencsv.sourceforge.net/ http://opencsv.sourceforge.net/

You should be using ; 您应该使用; instead of , . 而不是,

fw.append("Company Name");
              fw.append(','); // <-- extra
              fw.append(','); // <-- extra
              fw.append(',');
              fw.append("Addres");

This creates extra fields in your csv, and offsets your headers from their corresponding rows. 这会在csv中创建额外的字段,并使标头从其相应的行偏移。

fw.append('\n');
              fw.append(companyName);  
              fw.append(',');   //  <-- only one comma, not three
              fw.append(address);
              fw.append(',');
              fw.append(phones);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM