<dependencies>
<dependency>
<groupId>org.beanio</groupId>
<artifactId>csvbang</artifactId>
<version>1.2.0</version>
</dependency>
</dependencies>
<configuration>
<stream name="csvStream" format="csv" strict="true">
<parser>
<property name="delimiter" value="," />
<property name="recordDelimiter" value="\r
" />
</parser>
<record name="csvRecord" class="com.example.CsvRecord">
<field name="column1" type="String" />
<field name="column2" type="Integer" />
</record>
</stream>
</configuration>
import org.beanio.StreamFactory;
import org.beanio.builder.StreamBuilder;
public class CsvProcessor {
public static void main(String[] args) throws Exception {
StreamFactory factory = StreamFactory.newInstance();
factory.load("path/to/csvbang.xml");
CsvStream csvStream = factory.createStream("csvStream");
BeanReader reader = csvStream.createReader(new File("path/to/input.csv"));
CsvRecord record;
while ((record = reader.read()) != null) {
// ...
}
BeanWriter writer = csvStream.createWriter(new File("path/to/output.csv"));
writer.write(record1);
writer.write(record2);
// ...
writer.flush();
writer.close();
}
}