1

I have a read file script, the data is for example

kevin, smith, 321, street34

lady, sevilla, 4564, blv 34

carl, max, 1212, st 34#3

newDataArray = []

const data = fs.readFileSync('/Users/myuser/Documents/test.txt', 'utf8')

//here I delete  \n
let response = data.split(/\r?\n/g)


    //the array is now lenght 3

    response.forEach(element => {
        newDataArray.push(element)   
    });

but i need at the final the following

    {
      name: 'kevin',
      lastname: 'smith',
      phone: '321',
      add: 'street34' 
    },
    {
      name: 'lady',
      lastname: 'sevilla',
      phone: '4564',
      add: 'blv 34' 
    },
    {
      name: 'carl',
      lastname: 'max',
      phone: '1212',
      add: 'st 34#3' 
    }

and after may to save in mysql

//i dont know how to replace req.body

const { name, lastname, phone, add } = req.body;
    connection.query('INSERT INTO test_table SET ? ',
      {
        name,
        lastname,
        phone,
        add
      }
    , (err, result) => {
      res.redirect('/');
});

1 Answer 1

1

As simple as that:

let response = data.split(/\r?\n/g)
    .map( row => {
        row = row.split(', ');
        return {
            name: row[0],
            lastname: row[1],
            phone: row[2],
            add: row[3],
        }
    })
Sign up to request clarification or add additional context in comments.

1 Comment

You could even do: let response = data.split(/\r?\n/g) .map( row => { [ name, lastName, phone, row ] = row.split(', '); return { name, lastName, phone, add, } })

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.