Struct spring_batch_rs::CsvItemReaderBuilder
source · pub struct CsvItemReaderBuilder { /* private fields */ }
Implementations§
source§impl CsvItemReaderBuilder
impl CsvItemReaderBuilder
Create a new builder for configuring CSV parsing.
To convert a builder into a reader, call one of the methods starting
with from_
.
Example
use std::error::Error;
use csv::{ReaderBuilder, StringRecord};
fn example() -> Result<(), Box<dyn Error>> {
let data = "\
city,country,pop
Boston,United States,4628910
Concord,United States,42695
";
let mut rdr = ReaderBuilder::new().from_reader(data.as_bytes());
let records = rdr
.records()
.collect::<Result<Vec<StringRecord>, csv::Error>>()?;
assert_eq!(records, vec![
vec!["Boston", "United States", "4628910"],
vec!["Concord", "United States", "42695"],
]);
Ok(())
}
sourcepub fn new() -> CsvItemReaderBuilder
pub fn new() -> CsvItemReaderBuilder
Examples found in repository?
examples/csv_reader_with_headers.rs (line 34)
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
fn main() -> std::io::Result<()> {
let csv = "year,make,model,description
1948,Porsche,356,Luxury sports car
1967,Ford,Mustang fastback 1967,American car";
let reader = CsvItemReaderBuilder::new()
.has_headers(true)
.delimiter(b',')
.from_reader(csv.as_bytes());
let writer = LoggerWriter::new();
let step: Step<Record, Record> = StepBuilder::new()
.reader(&reader)
.writer(&writer)
.chunk(4)
.build();
step.execute();
Ok(())
}
sourcepub fn delimiter(self, delimiter: u8) -> CsvItemReaderBuilder
pub fn delimiter(self, delimiter: u8) -> CsvItemReaderBuilder
Examples found in repository?
examples/csv_reader_with_headers.rs (line 36)
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
fn main() -> std::io::Result<()> {
let csv = "year,make,model,description
1948,Porsche,356,Luxury sports car
1967,Ford,Mustang fastback 1967,American car";
let reader = CsvItemReaderBuilder::new()
.has_headers(true)
.delimiter(b',')
.from_reader(csv.as_bytes());
let writer = LoggerWriter::new();
let step: Step<Record, Record> = StepBuilder::new()
.reader(&reader)
.writer(&writer)
.chunk(4)
.build();
step.execute();
Ok(())
}
pub fn terminator(self, terminator: Terminator) -> CsvItemReaderBuilder
sourcepub fn has_headers(self, yes: bool) -> CsvItemReaderBuilder
pub fn has_headers(self, yes: bool) -> CsvItemReaderBuilder
Examples found in repository?
examples/csv_reader_with_headers.rs (line 35)
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
fn main() -> std::io::Result<()> {
let csv = "year,make,model,description
1948,Porsche,356,Luxury sports car
1967,Ford,Mustang fastback 1967,American car";
let reader = CsvItemReaderBuilder::new()
.has_headers(true)
.delimiter(b',')
.from_reader(csv.as_bytes());
let writer = LoggerWriter::new();
let step: Step<Record, Record> = StepBuilder::new()
.reader(&reader)
.writer(&writer)
.chunk(4)
.build();
step.execute();
Ok(())
}
sourcepub fn from_reader<R: Read>(self, rdr: R) -> CsvItemReader<R>
pub fn from_reader<R: Read>(self, rdr: R) -> CsvItemReader<R>
Examples found in repository?
examples/csv_reader_with_headers.rs (line 37)
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
fn main() -> std::io::Result<()> {
let csv = "year,make,model,description
1948,Porsche,356,Luxury sports car
1967,Ford,Mustang fastback 1967,American car";
let reader = CsvItemReaderBuilder::new()
.has_headers(true)
.delimiter(b',')
.from_reader(csv.as_bytes());
let writer = LoggerWriter::new();
let step: Step<Record, Record> = StepBuilder::new()
.reader(&reader)
.writer(&writer)
.chunk(4)
.build();
step.execute();
Ok(())
}
pub fn from_path<R: AsRef<Path>>(self, path: R) -> CsvItemReader<File>
Trait Implementations§
source§impl Default for CsvItemReaderBuilder
impl Default for CsvItemReaderBuilder
source§fn default() -> CsvItemReaderBuilder
fn default() -> CsvItemReaderBuilder
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl RefUnwindSafe for CsvItemReaderBuilder
impl Send for CsvItemReaderBuilder
impl Sync for CsvItemReaderBuilder
impl Unpin for CsvItemReaderBuilder
impl UnwindSafe for CsvItemReaderBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more