user3766366
user3766366

Reputation: 67

Reading CSV file in to an array using javascript

I'm trying to do something fairly simple I think but I'm missing something. I've very new to Javascript. I'm trying to read a CSV file in to an array (in my code below I'm simply trying to output the data to an alert box). I keep getting an error "access denied."

function readTextFile(file) {
  var rawFile = new XMLHttpRequest();
  rawFile.open("GET", file, true);
  rawFile.onreadystatechange = function () {
    if(rawFile.readyState === 4) {
      if(rawFile.status === 200 || rawFile.status == 0) {
        var allText = rawFile.responseText;
        alert(allText);
      }
    }
  }
  rawFile.send(null);
}

I suspect there is an issue with where I have the csv file located? Due to restrictions with our CMS I can only reference the file like this www.example.com/csvfile.csv.

Any help would be greatly appreciated.

Upvotes: 1

Views: 19789

Answers (2)

selvarajmas
selvarajmas

Reputation: 1643

Here is sample code for reading csv file into array

var request = new XMLHttpRequest();  
request.open("GET", url, false);   
request.send(null);  

var csvData = new Array();
var jsonObject = request.responseText.split(/\r?\n|\r/);
for (var i = 0; i < jsonObject.length; i++) {
  csvData.push(jsonObject[i].split(','));
}
// Retrived data from csv file content
console.log(csvData);

Here is the working fiddle example: http://jsfiddle.net/BdCnm/450/

Upvotes: 6

user3724235
user3724235

Reputation: 33

Give this link a try and check his source code on Github, he lays it out in a pretty concise way.

https://github.com/MounirMesselmeni/html-fileapi

Upvotes: 0

Related Questions