• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Pruebas Online
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

177
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);
almost 3 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

almost 3 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda