Format examples for fluent style
This commit is contained in:
parent
0bcdcfd466
commit
4ca0556f6b
|
@ -71,24 +71,23 @@ for (CSVRecord record : records) {
|
|||
for example:
|
||||
</p>
|
||||
<source>final URL url = ...;
|
||||
final Reader reader = new InputStreamReader(new BOMInputStream(url.openStream()), "UTF-8");
|
||||
final CSVParser parser = CSVFormat.EXCEL.builder().setHeader().build().parse(reader);
|
||||
try {
|
||||
try (final Reader reader = new InputStreamReader(new BOMInputStream(url.openStream()), "UTF-8");
|
||||
final CSVParser parser = CSVFormat.EXCEL.builder()
|
||||
.setHeader()
|
||||
.build()
|
||||
.parse(reader)) {
|
||||
for (final CSVRecord record : parser) {
|
||||
final String string = record.get("SomeColumn");
|
||||
...
|
||||
}
|
||||
} finally {
|
||||
parser.close();
|
||||
reader.close();
|
||||
}
|
||||
</source>
|
||||
<p>
|
||||
You might find it handy to create something like this:
|
||||
</p>
|
||||
<source>/**
|
||||
* Creates a reader capable of handling BOMs.
|
||||
*/
|
||||
* Creates a reader capable of handling BOMs.
|
||||
*/
|
||||
public InputStreamReader newReader(final InputStream inputStream) {
|
||||
return new InputStreamReader(new BOMInputStream(inputStream), StandardCharsets.UTF_8);
|
||||
}
|
||||
|
@ -118,7 +117,10 @@ for (CSVRecord record : records) {
|
|||
Indices may not be the most intuitive way to access record values. For this reason it is possible to
|
||||
assign names to each column in the file:
|
||||
<source>Reader in = new FileReader("path/to/file.csv");
|
||||
Iterable<CSVRecord> records = CSVFormat.RFC4180.builder().setHeader("ID", "CustomerNo", "Name").build().parse(in);
|
||||
Iterable<CSVRecord> records = CSVFormat.RFC4180.builder()
|
||||
.setHeader("ID", "CustomerNo", "Name")
|
||||
.build()
|
||||
.parse(in);
|
||||
for (CSVRecord record : records) {
|
||||
String id = record.get("ID");
|
||||
String customerNo = record.get("CustomerNo");
|
||||
|
@ -136,7 +138,10 @@ for (CSVRecord record : records) {
|
|||
ID, CustomerNo, Name
|
||||
}
|
||||
Reader in = new FileReader("path/to/file.csv");
|
||||
Iterable<CSVRecord> records = CSVFormat.RFC4180.builder().setHeader(Headers.class).build().parse(in);
|
||||
Iterable<CSVRecord> records = CSVFormat.RFC4180.builder()
|
||||
.setHeader(Headers.class)
|
||||
.build()
|
||||
.parse(in);
|
||||
for (CSVRecord record : records) {
|
||||
String id = record.get(Headers.ID);
|
||||
String customerNo = record.get(Headers.CustomerNo);
|
||||
|
@ -149,7 +154,11 @@ for (CSVRecord record : records) {
|
|||
Some CSV files define header names in their first record. If configured, Apache Commons CSV can parse
|
||||
the header names from the first record:
|
||||
<source>Reader in = new FileReader("path/to/file.csv");
|
||||
Iterable<CSVRecord> records = CSVFormat.RFC4180.builder().setHeader().setSkipHeaderRecord(true).build().parse(in);
|
||||
Iterable<CSVRecord> records = CSVFormat.RFC4180.builder()
|
||||
.setHeader()
|
||||
.setSkipHeaderRecord(true)
|
||||
.build()
|
||||
.parse(in);
|
||||
for (CSVRecord record : records) {
|
||||
String id = record.get("ID");
|
||||
String customerNo = record.get("CustomerNo");
|
||||
|
@ -163,16 +172,22 @@ for (CSVRecord record : records) {
|
|||
To print a CSV file with headers, you specify the headers in the format:
|
||||
</p>
|
||||
<source>final Appendable out = ...;
|
||||
final CSVPrinter printer = CSVFormat.DEFAULT.builder().setHeader("H1", "H2").build().print(out);
|
||||
final CSVPrinter printer = CSVFormat.DEFAULT.builder()
|
||||
.setHeader("H1", "H2")
|
||||
.build()
|
||||
.print(out);
|
||||
</source>
|
||||
<p>
|
||||
To print a CSV file with JDBC column labels, you specify the ResultSet in the format:
|
||||
</p>
|
||||
<source>final ResultSet resultSet = ...;
|
||||
final CSVPrinter printer = CSVFormat.DEFAULT.builder().setHeader(resultSet).build().print(out);
|
||||
<source>try (final ResultSet resultSet = ...) {
|
||||
final CSVPrinter printer = CSVFormat.DEFAULT.builder()
|
||||
.setHeader(resultSet)
|
||||
.build()
|
||||
.print(out);
|
||||
}
|
||||
</source>
|
||||
</subsection>
|
||||
</section>
|
||||
<!-- ================================================== -->
|
||||
</body>
|
||||
</document>
|
||||
|
|
Loading…
Reference in New Issue