I'm currently exporting data (on the client side) to CSV, with specific utf-8 encoding
var csvContent = "data:text/csv;charset=utf-8,";
arr.forEach(function(infoArray, index){
var dataString = infoArray.join(",");
csvContent += index < arr.length ? dataString+ "\n" : dataString;
});
var encodedUri = encodeURI(csvContent);
var link = document.createElement("a");
link.setAttribute("href", encodedUri);
link.setAttribute("download", "data.csv");
document.body.appendChild(link);
link.click();
The data is in arr and looks like :
[{'firstname':'John', 'surname':'Doe', 'city':'Paris'}, ... , {'firstname':'Johnny', 'surname':'Done', 'city':'Paris'}]
It works pretty well expect that when I'm importing the resulting file in Excel I have encoding error (É -> É for example), but when I open the file in Sublime Text everything looks fine.