Javascript即时上传和解析文件

Fyo*_*hov 4 javascript csv file-upload

是否可以使用上传文件

<input type="file">
Run Code Online (Sandbox Code Playgroud)

然后将其解析为javascript数组而不在服务器端保存文件?您能否建议任何插件使用csv(或任何其他)文件类型来执行此操作。

在不使用后端的情况下以这种方式进行操作是否是个好主意?

谢谢。

Ama*_*mar 7

用于上传csv的js代码,并在客户端进行解析,然后将其绘制到控制台中

function uploadDealcsv () {}; 

  /*------ Method for read uploded csv file ------*/
  uploadDealcsv.prototype.getCsv = function(e) {
       
      let input = document.getElementById('dealCsv');
      input.addEventListener('change', function() {

        if (this.files && this.files[0]) {

            var myFile = this.files[0];
            var reader = new FileReader();
            
            reader.addEventListener('load', function (e) {
                
                let csvdata = e.target.result; 
                parseCsv.getParsecsvdata(csvdata); // calling function for parse csv data 
            });
            
            reader.readAsBinaryString(myFile);
        }
      });
    }

    /*------- Method for parse csv data and display --------------*/
    uploadDealcsv.prototype.getParsecsvdata = function(data) {

        let parsedata = [];

        let newLinebrk = data.split("\n");
        for(let i = 0; i < newLinebrk.length; i++) {

            parsedata.push(newLinebrk[i].split(","))
        }

        console.table(parsedata);
    }


  
  var parseCsv = new uploadDealcsv();
  parseCsv.getCsv();
Run Code Online (Sandbox Code Playgroud)
<input type="file" id="dealCsv"/>
Run Code Online (Sandbox Code Playgroud)