Saltar al contenido

Java – Escribir archivo CSV con Apache.commons.csv

Buscamos en el mundo online y así darte la respuesta a tu inquietud, en caso de alguna inquietud deja tu inquietud y te contestamos con gusto, porque estamos para servirte.

Solución:

Parece que está imprimiendo todos los registros en la misma línea.

Otros métodos como printRecords serán más útiles:

String outputFile = savePath+".csv";
CSVPrinter csvFilePrinter = null;
CSVFormat csvFileFormat = CSVFormat.EXCEL.withHeader();
FileWriter fileWriter = new FileWriter(outputFile);
csvFilePrinter = new CSVPrinter(fileWriter, csvFileFormat);

csvFilePrinter.printRecords(excelParser.getRecords());


fileWriter.flush();
fileWriter.close();
csvFilePrinter.close();

La respuesta de Arnaud es correcta y buena. Aquí hay una variación, más corta y más moderna.

Aquí nosotros:

  • Utilizar el Path, Filey Files clases ofrecidas por Java moderno para facilitar el trabajo de manejo de archivos.
  • Utilizar una BufferedWriter para un mejor rendimiento con grandes cantidades de datos.
  • Especifique la codificación de caracteres que se utilizará. Por lo general, UTF-8 es el mejor. Si no entiendes, lee esto.
  • Incluya las capturas de prueba necesarias para las excepciones relacionadas con archivos.
  • Agregue la sintaxis de prueba con recursos para cerrar automáticamente el archivo.
  • Omita el vaciado explícito, ya que el escritor almacenado en búfer se vaciará automáticamente como parte del cierre automático del BufferedWriter y CSVPrinter. Para citar el Javadoc, llamando java.io.Writer::close “Cierra la corriente, enjuagándola primero”.

Código:

CSVFormat format = CSVFormat.EXCEL.withHeader();
Path path = Paths.get( savePath + ".csv" );
try (
        BufferedWriter writer = Files.newBufferedWriter( path , StandardCharsets.UTF_8 ) ;
        CSVPrinter printer = new CSVPrinter( writer , format ) ;
)

    printer.printRecords( excelParser.getRecords() );
 catch ( IOException e )

    e.printStackTrace();

Editar: Faltaba un corchete.

Te mostramos las reseñas y valoraciones de los lectores

Recuerda dar visibilidad a esta noticia si si solucionó tu problema.

¡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 *