Security News
How Threat Actors are Abusing GitHub’s File Upload Feature to Host Malware
GitHub is susceptible to a CDN flaw that allows attackers to host malware on any public repository.
csvjson-csv2json
Advanced tools
Readme
Single function csv2json
to reliably convert CSV to JSON. Self contained without dependencies. Used to power CSVJSON the online tool found at www.csvjson.com/csv2json. Used by thousands everyday.
Simply call csv2json
passing a string to obtain JSON. The string may be CSV (comma separated values), TSV (tab separated values) or semi-colon separated values (typically used in French Excel). It will auto-detect the separator although you may override or force it via the separator
option.
const csv2json = require('./csv2json.js');
const csv = `album, year, US_peak_chart_post
The White Stripes, 1999, -
De Stijl, 2000, -
White Blood Cells, 2001, 61
Elephant, 2003, 6
Get Behind Me Satan, 2005, 3
Icky Thump, 2007, 2
Under Great White Northern Lights, 2010, 11
Live in Mississippi, 2011, -
Live at the Gold Dollar, 2012, -
Nine Miles from the White City, 2013, -`;
const json = csv2json(csv, {parseNumbers: true});
console.log(json);
Note: In the browser, global namespace CSVJSON
is created. It contains the csv2json
function.
<script type="text/javascript" src="csv2json.js"></script>
<script>
const csv = `album, year, US_peak_chart_post
The White Stripes, 1999, -
De Stijl, 2000, -
White Blood Cells, 2001, 61
Elephant, 2003, 6
Get Behind Me Satan, 2005, 3
Icky Thump, 2007, 2
Under Great White Northern Lights, 2010, 11
Live in Mississippi, 2011, -
Live at the Gold Dollar, 2012, -
Nine Miles from the White City, 2013, -`;
const json = CSVJSON.csv2json(csv, {parseNumbers: true});
console.log(json);
</script>
In both cases, you would get this in the console:
[
{
"album": "The White Stripes",
"year": 1999,
"US_peak_chart_post": "-"
},
{
"album": "De Stijl",
"year": 2000,
"US_peak_chart_post": "-"
},
{
"album": "White Blood Cells",
"year": 2001,
"US_peak_chart_post": 61
},
{
"album": "Elephant",
"year": 2003,
"US_peak_chart_post": 6
},
{
"album": "Get Behind Me Satan",
"year": 2005,
"US_peak_chart_post": 3
},
{
"album": "Icky Thump",
"year": 2007,
"US_peak_chart_post": 2
},
{
"album": "Under Great White Northern Lights",
"year": 2010,
"US_peak_chart_post": 11
},
{
"album": "Live in Mississippi",
"year": 2011,
"US_peak_chart_post": "-"
},
{
"album": "Live at the Gold Dollar",
"year": 2012,
"US_peak_chart_post": "-"
},
{
"album": "Nine Miles from the White City",
"year": 2013,
"US_peak_chart_post": "-"
}
]
csv2json
supports a number of options passed as an optional hash:
separator
: Character which acts as separator. If omitted, will attempt to detect comma ,
, semi-colon ;
or tab \t
.parseNumbers
: If set to true
will attempt to convert a value to a number, if possible.parseJSON
: If set to true
will attempt to convert a value to a valid JSON value if possible. Detects numbers, null
, false
, true
, []
and {}
.transpose
: If set to true
will pivot the table. The first column becomes the header.hash
: If set to true
will use the first column as a key and return a hash instead of an array of objects.You can of course test all of these options online on www.csvjson.com/csv2json.
Run the tests in your browser by opening test-browser.html
.
Run the tests through node:
node test-node.js
json2csv to convert JSON to CSV. npm package here.
json_beautifier to beautify and format your JSON. npm package here.
JSON2_mod a replacement of JSON
with more options to format your JSON. npm package here.
FAQs
Converts CSV to JSON. Powers the most used online tool CSVJSON https://www.csvjson.com/csv2json. Used by thousands everyday.
The npm package csvjson-csv2json receives a total of 5,716 weekly downloads. As such, csvjson-csv2json popularity was classified as popular.
We found that csvjson-csv2json demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub is susceptible to a CDN flaw that allows attackers to host malware on any public repository.
Security News
At Node Congress, Socket CEO Feross Aboukhadijeh uncovers the darker aspects of open source, where applications that rely heavily on third-party dependencies can be exploited in supply chain attacks.
Research
Security News
The Socket Research team found this npm package includes code for collecting sensitive developer information, including your operating system username, Git username, and Git email.