Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to read csv file content in AngularJS?

I want to read a csv file and get its content by using AngularJS and HTML5. I want to put the content of the csv file in $scope.

I have this code in my html

 <table align="center" >             <tr class="borderless">                 <td>Choose .csv file</td>                 <td><input type="file" name="readCsvFile" id="readCsvFile" accept=".csv"> </td>                 <td><input type="button" value="Upload" ng-click="uploadCsvFile()"></td>             </tr>  </table> 
like image 719
Mark Vincent Osea Avatar asked Oct 14 '14 06:10

Mark Vincent Osea


People also ask

How do I download a CSV file in AngularJS?

use the mimeType as your file type here for csv it would be attachment/csv but this won;t work on safari. There is awseome library https://github.com/alferov/angular-file-saver You can use this.


1 Answers

with a custom directive:

app.directive('fileReader', function() {   return {     scope: {       fileReader:"="     },     link: function(scope, element) {       $(element).on('change', function(changeEvent) {         var files = changeEvent.target.files;         if (files.length) {           var r = new FileReader();           r.onload = function(e) {               var contents = e.target.result;               scope.$apply(function () {                 scope.fileReader = contents;               });           };            r.readAsText(files[0]);         }       });     }   }; }); 

http://plnkr.co/edit/eeQbR65oE8iljm7ueGhX?p=preview

like image 145
Marian Ban Avatar answered Sep 19 '22 23:09

Marian Ban