Saltar al contenido

¿Cómo crear y guardar archivos CSV en React Native?

Nuestro team de especialistas pasados ciertos días de trabajo y recopilación de de datos, hallamos los datos necesarios, queremos que te sea de gran utilidad para tu trabajo.

Solución:

Puede usar react-native-fetch-blob para escribir en el sistema de archivos del dispositivo. (¡Yo también me preguntaba esto!)

Empezamos convirtiendo un array de valores a un string. Si nuestros valores están separados por , comas y nuestras filas están separadas por n nuevas líneas, entonces nuestro string es CSV. podemos tomar eso stringescríbalo en un archivo con un .csv extensión de archivo y listo tenemos una .csv expediente.

Aquí hay un código que hace exactamente esto:

import RNFetchBlob from 'react-native-fetch-blob';

const values = [
  ['build', '2017-11-05T05:40:35.515Z'],
  ['deploy', '2017-11-05T05:42:04.810Z']
];

// construct csvString
const headerString = 'event,timestampn';
const rowString = values.map(d => `$d[0],$d[1]n`).join('');
const csvString = `$headerString$rowString`;

// write the current list of answers to a local csv file
const pathToWrite = `$RNFetchBlob.fs.dirs.DownloadDir/data.csv`;
console.log('pathToWrite', pathToWrite);
// pathToWrite /storage/emulated/0/Download/data.csv
RNFetchBlob.fs
  .writeFile(pathToWrite, csvString, 'utf8')
  .then(() => 
    console.log(`wrote file $pathToWrite`);
    // wrote file /storage/emulated/0/Download/data.csv
  )
  .catch(error => console.error(error));

este enfoque me funcionó en un dispositivo de prueba con Android 7.x.

en caso de que sea útil, también compartiré un enlace al código equivalente dentro de mi proyecto nativo de reacción

Puedes respaldar nuestra publicación dejando un comentario o dejando una puntuación te damos la bienvenida.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *