1 import java.io.BufferedReader;
2 import java.io.BufferedWriter;
3 import java.io.File;
4 import java.io.FileOutputStream;
5 import java.io.FileReader;
6 import java.io.IOException;
7 import java.io.OutputStreamWriter;
8 import java.util.ArrayList;
9 import java.util.List;
10
11 /**
12 * CSV操作(导出和导入)
13 *
14 */
15 public class CSVUtil {
16
17 /**
18 * 导出
19 *
20 * @param file
21 * csv文件(路径+文件名),csv文件不存在会自动创建
22 * @param dataList
23 * 数据
24 * @return
25 */
26 public static String exportCsv(File file, List<String> dataList) {
27
28 boolean isSucess = false;
29
30 if (!file.getParentFile().exists()) {
31 file.getParentFile().mkdirs();
32 }
33 if (!file.exists()) {
34 try {
35 file.createNewFile();
36 } catch (IOException e) {
37 throw new RuntimeException(e);
38 }
39 }
40
41 FileOutputStream out = null;
42 OutputStreamWriter osw = null;
43 BufferedWriter bw = null;
44 try {
45 out = new FileOutputStream(file);
46 osw = new OutputStreamWriter(out, "UTF-8");
47 bw = new BufferedWriter(osw);
48 if (dataList != null && !dataList.isEmpty()) {
49 for (String data : dataList) {
50 bw.append(data).append("\r");
51 }
52 }
53 isSucess = true;
54 } catch (Exception e) {
55 e.printStackTrace();
56 isSucess = false;
57 } finally {
58 if (bw != null) {
59 try {
60 bw.close();
61 bw = null;
62 } catch (IOException e) {
63 e.printStackTrace();
64 }
65 }
66 if (osw != null) {
67 try {
68 osw.close();
69 osw = null;
70 } catch (IOException e) {
71 e.printStackTrace();
72 }
73 }
74 if (out != null) {
75 try {
76 out.close();
77 out = null;
78 } catch (IOException e) {
79 e.printStackTrace();
80 }
81 }
82 }
83
84 return file.getAbsolutePath();
85 }
86
87 /**
88 * 导入
89 *
90 * @param file
91 * csv文件(路径+文件)
92 * @return
93 */
94 public static List<String> importCsv(File file) {
95 List<String> dataList = new ArrayList<String>();
96
97 BufferedReader br = null;
98 try {
99 br = new BufferedReader(new FileReader(file));
100 String line = "";
101 while ((line = br.readLine()) != null) {
102 dataList.add(line);
103 }
104 } catch (Exception e) {
105 } finally {
106 if (br != null) {
107 try {
108 br.close();
109 br = null;
110 } catch (IOException e) {
111 e.printStackTrace();
112 }
113 }
114 }
115 return dataList;
116 }
117
118 public static void main(String[] args) {
119 // File file = new File("D:/s.csv");
120 // CSVUtil.importCsv(file);
121
122 File file = new File("D:/222.csv");
123 List<String> dataList = new ArrayList<String>();
124 dataList.add("1");
125 dataList.add("2");
126 dataList.add("3");
127 dataList.add("4");
128 dataList.add("5");
129
130 CSVUtil.exportCsv(file, dataList);
131
132 }
133
134 }