CSV是逗号分隔文件(Comma Separated Values)的首字母英文缩写,是一种用来存储数据的纯文本格式,通常用于电子表格或数据库软件。在 CSV文件中,数据“栏”以逗号分隔,可允许程序通过读取文件为数据重新创建正确的栏结构,并在每次遇到逗号时开始新的一栏。如:
1,张三,男
2,李四,男
3,小红,女
1、CSV导入/导出封装类
package com.parami.utils;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.List;
/**
* CSV操作(导出和导入)
*
*/
public class CSVUtils {
/**
* 导出
*
* @param file csv文件(路径+文件名),csv文件不存在会自动创建
* @param dataList 数据
* @return
*/
public static boolean exportCsv(File file, List<String> dataList){
boolean isSucess=false;
FileOutputStream out=null;
OutputStreamWriter osw=null;
BufferedWriter bw=null;
try {
out = new FileOutputStream(file);
osw = new OutputStreamWriter(out);
bw =new BufferedWriter(osw);
if(dataList!=null && !dataList.isEmpty()){
for(String data : dataList){
bw.append(data).append("\r");
}
}
isSucess=true;
} catch (Exception e) {
isSucess=false;
}finally{
if(bw!=null){
try {
bw.close();
bw=null;
} catch (IOException e) {
e.printStackTrace();
}
}
if(osw!=null){
try {
osw.close();
osw=null;
} catch (IOException e) {
e.printStackTrace();
}
}
if(out!=null){
try {
out.close();
out=null;
} catch (IOException e) {
e.printStackTrace();
}
}
}
return isSucess;
}
/**
* 导入
*
* @param file csv文件(路径+文件)
* @return
*/
public static List<String> importCsv(File file){
List<String> dataList=new ArrayList<String>();
BufferedReader br=null;
try {
br = new BufferedReader(new FileReader(file));
String line = "";
while ((line = br.readLine()) != null) {
dataList.add(line);
}
}catch (Exception e) {
}finally{
if(br!=null){
try {
br.close();
br=null;
} catch (IOException e) {
e.printStackTrace();
}
}
}
return dataList;
}
}
2、CSV导入/导出测试
复制代码
package junit.test;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
import com.parami.utils.CSVUtils;
/**
* CSV操作(导出和导入)
*
*/
public class CsvTest {
/**
* CSV导出
*
* @throws Exception
*/
@Test
public void exportCsv() {
List<String> dataList=new ArrayList<String>();
dataList.add("1,张三,男");
dataList.add("2,李四,男");
dataList.add("3,小红,女");
boolean isSuccess=CSVUtils.exportCsv(new File("D:/test/ljq.csv"), dataList);
System.out.println(isSuccess);
}
/**
* CSV导出
*
* @throws Exception
*/
@Test
public void importCsv() {
List<String> dataList=CSVUtils.importCsv(new File("D:/test/ljq.csv"));
if(dataList!=null && !dataList.isEmpty()){
for(String data : dataList){
System.out.println(data);
}
}
}
}
分享到:
相关推荐
javaCSV导入导出 ... File file = new File("C:/name.csv"); FileOutputStream out = new FileOutputStream(file); OutputStreamWriter osw = new OutputStreamWriter(out); BufferedWriter bw = new ...
csv 总结导入导出 已经自测过,没有问题
Java 实现 CSV 文件导入与导出功能 Java 中实现 CSV 文件导入与导出的知识点主要包括以下几个方面: 一、CSV 文件简介 ...CSV 文件导入导出功能可以用于各种业务场景,如数据导入、数据导出、数据报表等。
csv的文件的导入导出可能会用的到,需要的可以下一下把
在IT行业中,数据的导入与导出是常见的操作,特别是在数据分析、备份或系统迁移时。本项目关注的是如何使用Java编程语言将数据库中的记录导出为CSV(Comma Separated Values)格式的文件。CSV因其通用性和易于处理的...
接下来,我们将讨论如何使用`javacsv`库来实现CSV文件的导出和导入。 1. **CSV导出**: - 创建一个`CSVWriter`对象,通常需要传入一个`FileWriter`实例,指定要写入的文件路径。 - 使用`CSVWriter`的`writeNext()...
本压缩包“Csv导入导出.rar”提供了一套关于CSV文件导入与导出的解决方案,特别地,它可能包含了类别选择功能,使得数据处理更具灵活性。 1. CSV文件结构: CSV文件的简单结构使其易于读写,通常由列标题和数据行...
在Java编程环境中,CSV(Comma Separated Values)是一种常见的数据交换格式,广泛用于数据导入导出。"Java CSV批量导出工具类"是专为处理大量数据而设计的,尤其适用于那些需要处理千万级别的大数据集的情况。这个...
3. **数据导入导出功能**:JavaTools的核心功能是数据导入和导出,它可以读取CSV、Excel、XML、JSON等格式的文件,并将数据导入到数据库中,同时也可以将数据库中的数据导出为这些文件格式,方便数据交换和备份。...
这里提到的三个必需的包分别是`jexcelapi`、`jxl`和`javacsv`,它们为Java开发者提供了方便的API来操作Excel和CSV文件。 1. **jexcelapi**: - `jexcelapi`库是Java中处理Excel文件的一个开源项目,支持读取和写入...
- 如果工具支持命令行参数,那么可能使用了Java的命令行解析库,如Apache Commons CLI,允许用户通过命令行参数指定数据库连接信息和操作选项。 8. **测试**: - JUnit或TestNG用于编写单元测试,确保代码功能...
CSV(Comma Separated Values)是一种常见的数据交换格式,它以纯文本形式存储表格数据,易于阅读和编写,同时也能够被各种程序轻松导入。在IT领域,高效地导出CSV文件是一项重要的技能,特别是在大数据处理、数据...
JavaCSV库是一个用于Java编程语言的数据导入和导出工具,主要功能是帮助开发者处理CSV(逗号分隔值)文件...在实际项目中,正确使用JavaCSV可以帮助团队更快地完成数据导入导出任务,减少错误,并提高代码的可维护性。
在实际使用中,开发者首先需要将`javacsv.jar`添加到项目的类路径中,然后就可以直接引入库内的类和方法,进行CSV文件的读写操作。例如,创建一个`CsvWriter`实例,写入一行数据,然后关闭流,可以这样实现: ```...
它简单易用且跨平台兼容性好,常被用于导入导出数据、数据分析等场景。在Java中,处理CSV文件有多种方式,本篇文章将详细介绍如何利用`opencsv-2.3.jar`库来进行高效的数据读写操作。 #### 二、所需库与环境准备 - ...
Java CSV库,如javacsv 2.1,是处理CSV(逗号分隔值)文件的工具,这种格式在数据交换中非常常见,尤其在导入导出表格数据时。CSV因其简单、通用且易于处理的特性而广泛使用。下面我们将深入探讨javacsv 2.1库以及...
它提供了方便快捷的Excel导入导出功能,使得在Java应用中处理Excel数据变得非常简单。在这个“easypoi导入导出实例”中,我们能够看到一个完整的项目示例,包括了必要的代码和一个名为"user.xls"的Excel模板文件,...
CSV(Comma Separated Values)文件是一种常见的数据存储格式,广泛用于数据交换和导入导出。在Java中,处理CSV文件通常需要借助第三方库,如本案例中的`javacsv`库,版本2.1。这个库提供了一系列方法来帮助我们方便...
在实际应用中,使用"javacsv.jar"库时,你需要将其添加到项目的类路径中,然后就可以导入相关的类和方法来操作CSV文件。例如,以下是一个简单的示例,展示了如何使用`CSVReader`和`CSVWriter`: ```java import ...
总结,Java操作CSV文件涉及导入合适的库、读取与写入数据、处理记录和列,以及错误处理等多个环节。Apache Commons CSV库提供了一套完整的工具,使这些任务变得简单易行。在实际开发中,理解并熟练运用这些知识,能...