i have valid json string , can have many rows. have posted fragment.
var jsonstr = ["{\"r1\":768,\"r2\":1,\"r3\":\"system admin\",\"r4\":\"2013-06-08t05:51:23.000z\",\"r5\":1,\"r6\":\"system admin\",\"r7\":false}"] i need send above csv. follwed post
csv gets exported r1,r2,r3.. dont need keys r1, r3 , r3.. etc . need values . followed same example.
any pointers ?
var jsonstr = ["{\"r1\":768,\"r2\":1,\"r3\":\"system admin\",\"r4\":\"2013-06-08t05:51:23.000z\",\"r5\":1,\"r6\":\"system admin\",\"r7\":false}"] downloadjson2csv(jsonstr); function downloadjson2csv(objarray) { var array = typeof objarray != 'object' ? json.parse(objarray) : objarray; var str = ''; (var = 0; < array.length; i++) { var line = ''; var tmp = 0; var nx = 1; (var index in array[i]) { line += array[i][index]; if (tmp == 0) { nx = array[0][3]; } tmp++; } line.slice(0, line.length - 1); str += line + '\r\n'; } window.open("data:text/csv;charset=utf-8," + escape(str)) } here's fiddle : http://jsfiddle.net/ufjuy/
ok, since don't have control on json data i'm going assume given array of stringified json objects.
if case have @ jsfiddle (http://jsfiddle.net/ufjuy/10/)
i'm not sure how need output formatted, time being separated them commas in output.
i stripped out of unnecessary code found in fiddle simplify it.
var jsonstr = ["{\"r1\":768,\"r2\":1,\"r3\":\"system admin\",\"r4\":\"2013-06-08t05:51:23.000z\",\"r5\":1,\"r6\":\"system admin\",\"r7\":false}"] downloadjson2csv(jsonstr); function downloadjson2csv(objarray) { var str = ''; for(var = 0; < objarray.length; i++) { var array = typeof objarray[i] != 'object' ? json.parse(objarray[i]) : objarray[i]; var line = ''; (var index in array) { line += array[index] + ","; } line.slice(0,line.length-1); str += line + '\r\n'; } window.open( "data:text/csv;charset=utf-8," + escape(str)) } hope helps.
Comments
Post a Comment