Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

231
Vistas
cómo convertir la base de datos en un archivo de texto a datos json usando nodejs

tengo datos de la base de datos en un archivo de texto de planes como el siguiente formato

base de datos.txt:

 4233 ABAT POULET CHAQUET GH0012 BOUCHERIE / CHARCUTERIE VOLAILLE ABAT 4100 FERME 4.57 0 1 5.8863 0 384 ABRICOT PASTEU 200G LOU PRUNEL LO0009 FRUITS / LEGUMES FRUITS SECS ABRICOT 2200 FERME 2.43 20 1 3.8483 0 52 ABRICOT PAYS DN0116 FRUITS / LEGUMES FRUITS ABRICOT 6112 DANIV 1.80 5 1 4.5403 0 1979 ABRICOT SEC 250G RAPUNZEL 64AB250 FRUITS / LEGUMES FRUITS SECS ABRICOT 2200 RAPUN 2.28 6 1 3.1090 0 122 ABRICOT SEC TURQUIE VRAC 6KG R BY1002 FRUITS / LEGUMES FRUITS SECS ABRICOT 2200 BIOPA 5.79 6 1 8.7109 0

Necesito convertir a datos json usando nodejs como este formato:

 [ { "A1": "4233", "A2": "ABAT POULET CHAQUET", "A3": "GH0012", "A4": "BOUCHERIE / CHARCUTERIE", ... } ]

pruebo este ida no funciona

 var cells = str.split('\n').map(function (el) { return el.split(/\s+/); }); var headings = cells.shift(); var obj = cells.map(function (el) { var obj = {}; for (var i = 0, l = el.length; i < l; i++) { obj[headings[i]] = isNaN(Number(el[i])) ? el[i] : +el[i]; } return obj; }); var json = JSON.stringify(obj);
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El único error en su código fue la expresión regular (se dividía en uno o más espacios, pero necesitaba que se dividiera en 2 o más espacios) y en la función de mapa

Aquí está el código correcto

 var cells = str.split("\n").map(function (el) { return el.split(/\s{2,}/); }); var obj = cells.map(function (el) { var obj = {}; for (var i = 0, l = el.length; i < l; i++) { obj["A" + (i + 1)] = el[i]; } return obj; }); var json = JSON.stringify(obj, null, 4);

Recomendaría usar algún analizador tsv como ( https://www.npmjs.com/package/papaparse ) en lugar de usar expresiones regulares para dividir columnas

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda