
Show HN: ExcelJSON – Convert JSON To/from CSV, TSV Easily - palerdot
http://exceljson.com
======
13of40
Not trying to bash your project here, but why would I use a website for that
when I can do it programmatically from the command line, without sending you
my data?

Get-Content foo.json | ConvertFrom-Json | Export-Csv foo.csv

~~~
palerdot
Very valid point. But there are programmers, non technical people out there
for whom this might be of some help. I was using a initial version of this
tool locally and one of my friends found this tool helpful. I was also peeking
it into vuejs at that time, so I thought of rewriting the tool in vueJS. I
also threw some CSS into it and currently hosting it for free using Github
Pages just to see if it is useful for people out there in real world.

PS: I'm the creator of this tool. This tool is a client side app and makes use
of browser's File API to read and parse files. Source code -
[https://github.com/palerdot/exceljson](https://github.com/palerdot/exceljson)

~~~
13of40
Ah, I didn't realize it was happening client-side. That makes a lot more
sense.

------
CaRDiaK
I created a dummy spreadsheet in Excel 2013 and saved as CSV. When I try to
upload it gives "Invalid File. Please upload only csv, tsv files."

To eliminated any propriety meta data, I just saved a vanilla text file as csv
and it gives me the same error.

~~~
Freak_NL
Excel has the annoying habit of outputting localised CSV. What does your CSV
look like? This should work:

    
    
        "A","B"
        "a1","b1"
        "a2","b2"

~~~
CaRDiaK
I create a new file in notepad and save it as simple.csv with exactly this
content and I get "Invalid File. Please upload only csv, tsv files."

~~~
nebabyte
Also be sure to switch it off of "plain text file" or it'll save as
file.csv.txt (though if you have 'hide common file extensions' off you'd've
noticed this in your file browser)

iirc notepad auto prepends .txt anyways if that value isn't changed.

------
rmah
What does this have to do with Excel? It doesn't convert from or to excel
files. It converts to/from csv/tsv and json. Talk about false advertising.

~~~
palerdot
I just needed a domain name for hosting it. I have already clarified that
currently this tool does not read/parse excel binaries. May be in future, it
may do that. Sorry for the confusion.

------
Freak_NL
Why is it called ExcelJSON if it converts from and to JSON and TSV/CSV?

~~~
palerdot
Just came up with a random name as I needed a domain name for hosting.

------
MandieD
I tried [https://exceljson.github.io](https://exceljson.github.io), but that
didn't work. What is the *.github.io sitename? That way, you've got HTTPS from
the get-go.

~~~
enzanki_ars
Because the site is served from [0], Github Pages uses the CNAME file if
avalible [1], therefore the github.io site [2] redirects to the custom domain
[3]. Github Pages does not allow HTTPS on custom domains yet.

[0]
[https://github.com/palerdot/exceljson](https://github.com/palerdot/exceljson)

[1]
[https://github.com/palerdot/exceljson/blob/master/CNAME](https://github.com/palerdot/exceljson/blob/master/CNAME)

[2]
[https://palerdot.github.io/exceljson](https://palerdot.github.io/exceljson)

[3] [http://exceljson.com/](http://exceljson.com/)

------
jtcond13
This is cool but I have to wonder: what's the use case for this?

~~~
oneweekwonder
I wanted to upload the json you get from khan academies api to hopefully
flatten it to a csv format my mother can use to map their curriculum against
ours.

Otherwise I need to wip that script up I promised I do over xmas.

------
space_ghost
Using a library like this[0] might be a useful addition, so users won't need
to export as a specific format.

[0] [https://github.com/SheetJS/js-xlsx](https://github.com/SheetJS/js-xlsx)

------
yawniek
if you want to do JSON to CSV, TSV at scale, fast and with sse42 optimizations
you could try:
[https://github.com/tamediadigital/je](https://github.com/tamediadigital/je)

------
oxguy3
If you're working with JSON, you probably know how to use the command line (or
at least, you ought to). And if you know how to use the command line, you
should just install csvkit[1]. Then you can just do `in2csv in.ext > out.csv`
and `csvjson in.csv > out.json`.

[1]: [https://csvkit.readthedocs.io/](https://csvkit.readthedocs.io/)

------
danyfs
Good work guys! I will definitely use it on a daily basis. Is it free?

