ryu1kn / csv-writer

Convert objects/arrays into a CSV string or write them into a CSV file
https://www.npmjs.com/package/csv-writer
MIT License
246 stars 39 forks source link

adds optional parameter quoteEmptyFields #97

Open blowfishlol opened 1 year ago

blowfishlol commented 1 year ago

This pull request takes the input stated in issue https://github.com/ryu1kn/csv-writer/issues/60

with this PR, createObjectCsvWriter and createArrayCsvWriter accepts the parameter quoteEmptyFields, and this will any cause empty (null/undefined) values to be given an empty double quote ("")

The reason we needed this is that our company is working on the finance sector and one of the specification for the generated CSV files is for the nullish fields to be given an empty quote (""), and this PR makes it possible to configure the CSV writer to write nullish values as ("")

So quoteEmptyFields together with the alwaysQuote param, with the input of:

["VALUE_A, "VALUE_B", undefined, null]

Will generate an output:

"VALUE_A","VALUE_B","",""\n

steve1337 commented 1 year ago

+1 this would be very useful

Full disclosure: The author of the MR and I work at the same company.

steve1337 commented 1 year ago

@ryu1kn Is there anything else that should be done for this MR?

karimabbes commented 1 year ago

+1 this would be indeed useful

bahag-xvisnei commented 1 year ago

+1. I would like have this PR merged and released soon :-) Is there a way to start using this today?

csherman2828 commented 7 months ago

+1 I'd love to keep using this package but I needed this functionality and ultimately couldn't get it here. I'll have to look elsewhere. Love the interface but it's missing important functionality and contributor presence.

brakmic commented 3 months ago

Hi @blowfishlol ,

I’ve forked the CSV Writer project since the original seems abandoned. Your work on the quoteEmptyFields parameter is included in the fork.

Check it out here: CSV Writer Portable. You’re credited in the commit messages.

Thanks for your contribution!

Best, Harris