使用opencsv文件读写CSV文件
使用 Opencsv 读写 CSV 文件 Opencsv 是一个 Java 库,用于读写 CSV 文件。CSV(Comma Separated Values)是一种常用的文件格式,用于存储表格数据。Opencsv 库提供了两个主要类:CSVReader 和 CSVWriter,分别用于读取和写入 CSV 文件。 读取 CSV 文件 使用 Opencsv 读取 CSV 文件需要创建一个 CSVReader 对象,构造器中需要三个参数:reader、separator 和 quotechar。reader 是读取文件的流对象,separator 是用于定义分隔符,默认为逗号,quotechar 是用于定义列引号。 例如,下面是一个使用 Opencsv 读取 CSV 文件的示例代码: ```java CSVReader reader = new CSVReader(new InputStreamReader(new FileInputStream(csvFile), "GBK"), ',', CSVWriter.NO_QUOTE_CHARACTER); ``` 这里,我们创建了一个 CSVReader 对象,使用了 FileInputStream 读取文件,GBK 编码,逗号分隔符,不使用引号。 Opencsv 提供了两个方法来读取 CSV 文件:readAll() 和 readNext()。readAll() 方法读取整个 CSV 文件,返回一个 List<String[]> 对象,每个元素是一个字符串数组,表示一行数据。readNext() 方法读取下一行数据,返回一个字符串数组。 例如,下面是一个使用 Opencsv 读取 CSV 文件的示例代码: ```java public void CSVReadAll() throws Exception { File csv = new File(dir + "/file", "readerTest.csv"); CSVReader reader = new CSVReader(new InputStreamReader(new FileInputStream(csv), "GBK"), ','); String[] header = reader.readNext(); for (String s : header) { System.out.print(s + ","); } System.out.println(""); List<String[]> list = reader.readAll(); System.out.println(list.get(0)[0]); System.out.println(""); } ``` 写入 CSV 文件 使用 Opencsv 写入 CSV 文件需要创建一个 CSVWriter 对象,构造器中需要两个参数:writer 和 separator。writer 是写入文件的流对象,separator 是用于定义分隔符,默认为逗号。 例如,下面是一个使用 Opencsv 写入 CSV 文件的示例代码: ```java public void CSVWriter() throws Exception { File csv = new File(dir + "/file", "writerTest.csv"); if (!csv.exists()) csv.createNewFile(); List<String[]> list = new ArrayList<>(); String s1 = "123"; for (int i = 0; i < 22; i++) { String[] ss = {String.valueOf(i), String.valueOf(i), String.valueOf(i), String.valueOf(i)}; list.add(ss); } CSVWriter writer = new CSVWriter(new OutputStreamWriter(new FileOutputStream(csv), "GBK"), ','); writer.writeAll(list); } ``` 这里,我们创建了一个 CSVWriter 对象,使用了 FileOutputStream 写入文件,GBK 编码,逗号分隔符。然后,我们使用 writeAll() 方法写入 CSV 文件。 Opencsv 库提供了许多有用的方法,例如 close() 方法关闭流对象,readNext() 方法读取下一行数据,writeNext() 方法写入下一行数据等。 Opencsv 库是一个非常实用的工具,用于读写 CSV 文件。它提供了许多有用的方法,帮助开发者快速处理 CSV 文件。
- 粉丝: 7
- 资源: 961
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助