Tengo una página web hecha por html + javascript que es una demostración, quiero saber cómo leer un archivo csv local y leer línea por línea para poder extraer datos del archivo csv.
javascript
html
file
litaoshen
fuente
fuente
Respuestas:
Sin jQuery:
document.getElementById('file').onchange = function(){ var file = this.files[0]; var reader = new FileReader(); reader.onload = function(progressEvent){ // Entire file console.log(this.result); // By lines var lines = this.result.split('\n'); for(var line = 0; line < lines.length; line++){ console.log(lines[line]); } }; reader.readAsText(file); };
HTML:
<input type="file" name="file" id="file">
Recuerde poner su código javascript después de que se renderice el campo del archivo.
fuente
\n
. Pero con 100 m de líneas, se encontrará con una tabla que las mostrará en HTML.Usando ES6 el javascript se vuelve un poco más limpio
handleFiles(input) { const file = input.target.files[0]; const reader = new FileReader(); reader.onload = (event) => { const file = event.target.result; const allLines = file.split(/\r\n|\n/); // Reading line by line allLines.forEach((line) => { console.log(line); }); }; reader.onerror = (event) => { alert(event.target.error.name); }; reader.readAsText(file); }
fuente
\r?\n