pub struct Writer<W: Write> { /* private fields */ }Expand description
An already configured CSV writer.
§Configuration
To configure a Writer, if you need a custom delimiter for instance of if
you want to tweak the size of the inner buffer. Check out the
WriterBuilder.
Implementations§
Source§impl<W: Write> Writer<W>
impl<W: Write> Writer<W>
Sourcepub fn from_writer(writer: W) -> Self
pub fn from_writer(writer: W) -> Self
Create a new writer with default configuration using the provided writer
implementing std::io::Write.
Avoid providing a buffered writer because buffering will be handled for
you by the Writer.
Sourcepub fn write_record_no_quoting<I, T>(&mut self, record: I) -> Result<()>
pub fn write_record_no_quoting<I, T>(&mut self, record: I) -> Result<()>
Write the given “record” while foregoing any quoting/escaping.
This method accepts any item implementing IntoIterator and yielding
references to byte slices.
BEWARE: if written data needed escaping, invalid CSV will be written!
Only use this method when you can guarantee you are doing the right thing and want the extra performance.
Sourcepub fn write_byte_record_no_quoting(
&mut self,
record: &ByteRecord,
) -> Result<()>
pub fn write_byte_record_no_quoting( &mut self, record: &ByteRecord, ) -> Result<()>
Write the given ByteRecord while foregoing any quoting/escaping.
BEWARE: if written data needed escaping, invalid CSV will be written!
Only use this method when you can guarantee you are doing the right thing and want the extra performance.
Sourcepub fn write_record<I, T>(&mut self, record: I) -> Result<()>
pub fn write_record<I, T>(&mut self, record: I) -> Result<()>
Write the given “record”.
This method accepts any item implementing IntoIterator and yielding
references to byte slices.
Sourcepub fn write_byte_record(&mut self, record: &ByteRecord) -> Result<()>
pub fn write_byte_record(&mut self, record: &ByteRecord) -> Result<()>
Write the given ByteRecord.
Sourcepub fn write_splitted_record(&mut self, record: &[u8]) -> Result<()>
pub fn write_splitted_record(&mut self, record: &[u8]) -> Result<()>
Write the given byte slice, as-is, without quoting/escaping, with an added newline.
BEWARE: if written data needed escaping, invalid CSV will be written!
This method can typically be used with slices yielded by
Splitter.split_record.
Sourcepub fn into_inner(self) -> Result<W, IntoInnerError<BufWriter<W>>>
pub fn into_inner(self) -> Result<W, IntoInnerError<BufWriter<W>>>
Attempt to unwrap the underlying BufWriter by flusing it and
returning the original writer.