es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Angular – Forma eficiente de analizar 10000 filas de archivo csv/tsv

Estoy buscando una forma más eficiente (o librería) para analizar archivos CSV/TSV que contienen alrededor de 5000 ~ 10000 filas (utilizándolo para mostrar una tabla con “cdk virtual scroll” para previsualizar el archivo). Mi implementación actual no es suficiente para esa cantidad de filas.

Este.httpClient.get(esta.dataSrc, {
los encabezados: {
Aceptar: ‘texto/plano’
},
responseType: ‘texto’
}).subscribe(res => {
// maneja contenido TSV o CSV
const líneas = res.split(/\r|\n/);
const separador = líneas[0].indexOf(‘\t’) !== -1 ? ‘\t’ : ‘,’;
this.parsedCSV = líneas.map(l => l.split(separador));
});

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Podrías intentar usar Papa Parse para parsear tus archivos CSV/TSV. Es un poderoso y rápido parser de CSV que puede manejar archivos grandes con facilidad. También soporta streaming, por lo que puedes parsear archivos grandes sin tener que cargarlos en memoria.

    Aquí tienes un ejemplo de cómo podrías usarlo:

    Papa.parse(this.dataSrc, {
      download: true,
      header: true,
      dynamicTyping: true,
      complete: (results) => {
        this.parsedCSV = results.data;
      }
    });
    

Comments are closed.