Java中使用opencsv读写csv文件示例

 更新时间:2015年04月07日 11:57:43   投稿:junjie  
这篇文章主要介绍了Java中使用opencsv读写csv文件示例,本文给出了读CSV文件、写CSV文件、自定义分隔符、生成Javabeans等内容,需要的朋友可以参考下

OpenCSV是一个简单的用于解析CSV文件的java类库,它封装了CSV格式文件的输出和读入,可以自动处理CSV格式中的特殊字符,最重要的是OpenCSV可以用于商业化(commercial-friendly)。具体的使用方法:

读CSV文件

1、使用Iterator方式读

复制代码 代码如下:

CSVReader reader = new CSVReader(new FileReader("yourfile.csv"));
String [] nextLine;
while ((nextLine = reader.readNext()) != null) {
    // nextLine[] is an array of values from the line
    System.out.println(nextLine[0] + nextLine[1] + "etc...");
}

2、使用List
复制代码 代码如下:

CSVReader reader = new CSVReader(new FileReader("yourfile.csv"));
List myEntries = reader.readAll();

写CSV文件

1、类似于FileReader

复制代码 代码如下:

CSVWriter writer = new CSVWriter(new FileWriter("yourfile.csv"), '\t');
// feed in your array (or convert your data to an array)
String[] entries = "first#second#third".split("#");
writer.writeNext(entries);
writer.close();

自定义分隔符

1、自定义分隔符,如使用tab为分隔符

复制代码 代码如下:

CSVReader reader = new CSVReader(new FileReader("yourfile.csv"), '\t');

2、同样可以使用转义符
复制代码 代码如下:

CSVReader reader = new CSVReader(new FileReader("yourfile.csv"), '\t', '\'');

3、从第二(n)行开始解析
复制代码 代码如下:

CSVReader reader = new CSVReader(new FileReader("yourfile.csv"), '\t', '\'', 2);
dump SQL tables

java.sql.ResultSet myResultSet = ....
writer.writeAll(myResultSet, includeHeaders);


生成Javabeans
复制代码 代码如下:

ColumnPositionMappingStrategy strat = new ColumnPositionMappingStrategy();
strat.setType(YourOrderBean.class);
String[] columns = new String[] {"name", "orderNumber", "id"}; // the fields to bind do in your JavaBean
strat.setColumnMapping(columns);
 
CsvToBean csv = new CsvToBean();
List list = csv.parse(strat, yourReader);

相关文章

  • SpringMVC @RequestMapping注解作用详解

    SpringMVC @RequestMapping注解作用详解

    通过@RequestMapping注解可以定义不同的处理器映射规则,下面这篇文章主要给大家介绍了关于SpringMVC中@RequestMapping注解用法的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • 在deepin上如何使用Fleet开发SpringBoot 3.0.0项目

    在deepin上如何使用Fleet开发SpringBoot 3.0.0项目

    这篇文章主要介绍了在deepin上使用Fleet开发SpringBoot 3.0.0项目的过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • Maven中resources标签的用法详解

    Maven中resources标签的用法详解

    本文主要介绍了Maven中resources标签的用法详解,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • String的两种初始化方法讲解

    String的两种初始化方法讲解

    今天小编就为大家分享一篇关于String的两种初始化方法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-04-04
  • SpringBoot使用AOP,内部方法失效的解决方案

    SpringBoot使用AOP,内部方法失效的解决方案

    这篇文章主要介绍了SpringBoot使用AOP,内部方法失效的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • Java线程并发中常见的锁机制详细介绍

    Java线程并发中常见的锁机制详细介绍

    越来越多的互联网企业面临着用户量膨胀而带来的并发安全问题。接下来通过本文给大家介绍Java线程并发中常见的锁机制,感兴趣的朋友一起看看吧
    2016-05-05
  • 基于MyBatis的简单使用(推荐)

    基于MyBatis的简单使用(推荐)

    下面小编就为大家带来一篇基于MyBatis的简单使用(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • Mybatis映射文件之常用标签及特殊字符的处理方法

    Mybatis映射文件之常用标签及特殊字符的处理方法

    这篇文章主要介绍了Mybatis映射文件常用标签及特殊字符的处理,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • Java NIO Files类读取文件流方式小结

    Java NIO Files类读取文件流方式小结

    本文主要介绍了Java NIO Files类读取文件流方式小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • SpringBoot整合SpringDataJPA的示例

    SpringBoot整合SpringDataJPA的示例

    本文主要介绍了SpringBoot整合SpringDataJPA的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06

最新评论