public static <T> String writeCsvToString(CsvConfiguration<T> config, List<T> collection) throws IOException { CsvWriter<T> writer = new CsvWriter<>(config); ByteArrayOutputStream baos = new ByteArrayOutputStream(); writer.writeAll(baos, collection); return baos.toString(Charset.defaultCharset().name()); }
public void writeAll(OutputStream output, Stream<T> stream) throws IOException { BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(output, config.getCharset())); if (config.isHeader()) { writeHeader(writer, columns); } Iterator<T> iterator = stream.iterator(); while (iterator.hasNext()) { add(writer, iterator.next()); } writer.flush(); }
public void writeAll(OutputStream output, Collection<T> collection) throws IOException { writeAll(output, collection.stream()); }
public CsvWriter(CsvConfiguration<T> config) { this.config = config; this.typeSerializer = config.getTypeSerializer(); this.columns = getEntityInfo(config).getColumns(); this.csvEscaper = new CsvEscaper(config); this.emptyText = Character.toString(config.getTextDelimiter()) + config.getTextDelimiter(); }
public static void main(String[] args) throws FileNotFoundException, IOException { CitiBikeReader<TripAnnotated> reader = new CitiBikeReader<>("/tmp", str -> new TripAnnotatedParser(str)); CsvConfiguration<TripAnnotated> config = new CsvConfiguration.Builder<>(TripAnnotated.class).build(); CsvWriter<TripAnnotated> csvWriter = new CsvWriter<>(config); try (FileOutputStream fos = new FileOutputStream(new File("/tmp/trips.csv"))) { reader.forEachCsvInZip(trips -> { try { csvWriter.writeAll(fos, trips); } catch (IOException e) { e.printStackTrace(); } }); } }
public static void main(String[] args) throws FileNotFoundException, IOException { CitiBikeReader<Trip> reader = new CitiBikeReader<>("/tmp", str -> new TripParser(str)); CsvConfiguration<Trip> csvConfiguration = new Builder<Trip>(configureEntityMapping()).build(); CsvWriter<Trip> csvWriter = new CsvWriter<>(csvConfiguration); try (FileOutputStream fos = new FileOutputStream(new File("/tmp/trips.csv"))) { reader.forEachCsvInZip(trips -> { try { csvWriter.writeAll(fos, trips); } catch (IOException e) { e.printStackTrace(); } }); } }
public static void main(String[] args) throws FileNotFoundException, IOException { CitiBikeReader<Trip> reader = new CitiBikeReader<>("/tmp", str -> new TripParser(str)); EntityInfoBuilder<Trip> entityInfo = new EntityInfoBuilder<>(Trip.class); entityInfo.addFields("bikeId", "tripduration", "starttime", "startStationId", "stoptime", "endStationId", "userType", "birthYear", "gender"); CsvConfiguration<Trip> csvConfiguration = new Builder<Trip>(entityInfo.build()).build(); CsvWriter<Trip> csvWriter = new CsvWriter<>(csvConfiguration); try (FileOutputStream fos = new FileOutputStream(new File("/tmp/trips.csv"))) { reader.forEachCsvInZip(trips -> { try { csvWriter.writeAll(fos, trips); } catch (IOException e) { e.printStackTrace(); } }); } }
public static void main(String[] args) throws FileNotFoundException, IOException { CitiBikeReader<Trip> reader = new CitiBikeReader<>("/tmp", str -> new TripParser(str)); EntityInfoBuilder<Trip> entityInfo = new EntityInfoBuilder<>(Trip.class); entityInfo.addFields("bikeId", "starttime", "startStationId", "stoptime", "endStationId", "userType"); CsvConfiguration<Trip> csvConfiguration = new Builder<>(Trip.class) .entityInfo(entityInfo.build()) .alwaysDelimitText(true) .fieldSeparator(';') .lineDelimiter("\n") .textDelimiter('\'') .header(false) .build(); CsvWriter<Trip> csvWriter = new CsvWriter<>(csvConfiguration); try (FileOutputStream fos = new FileOutputStream(new File("/tmp/trips.csv"))) { reader.forEachCsvInZip(trips -> { try { csvWriter.writeAll(fos, trips); } catch (IOException e) { e.printStackTrace(); } }); } }