maven配置
<dependency>
<groupId>net.sourceforge.javacsv</groupId>
<artifactId>javacsv</artifactId>
<version>2.0</version>
</dependency>
代码
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.csvreader.CsvReader;
import com.csvreader.CsvWriter;
public class CsvUtil {
private static final Logger log = LoggerFactory.getLogger(FileUtil.class);
public static List<String[]> readCsv(String path)
{
List<String[]> csvList = new ArrayList<String[]>();
try {
CsvReader csvReader = new CsvReader(path,'|',Charset.forName("GBK"));
csvReader.readHeaders();
while (csvReader.readRecord()){
csvList.add(csvReader.getValues());
}
csvReader.close();
} catch (FileNotFoundException e) {
log.error("读取csv文件<{}>失败,有异常发生", path, e);
} catch (IOException e) {
log.error("读取csv文件<{}>失败,有异常发生", path, e);
}
return csvList;
}
public static void writeCsv(String path, List<String[]> contents)
{
CsvWriter wr =new CsvWriter(path,',',Charset.forName("GBK"));
try {
for (int i = 0; i < contents.size(); i++)
{
wr.writeRecord(contents.get(i));
}
wr.close();
} catch (IOException e) {
log.info("写入csv文件<{}>失败,有异常发生", path, e);
}
}
}