java 导出csv文件
来源:互联网 发布:网络彩票2018重启时间 编辑:程序博客网 时间:2024/04/27 12:30
package test;import java.io.BufferedWriter;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStreamWriter;import java.util.ArrayList;import java.util.Iterator;import java.util.LinkedHashMap;import java.util.List;import java.util.Map;import org.apache.commons.beanutils.BeanUtils;public class CSVUtils {public static File createCSVFile(List exportData, LinkedHashMap rowMapper,String outPutPath, String filename) {File csvFile = null;BufferedWriter csvFileOutputStream = null;try {csvFile = new File(outPutPath + filename + ".csv");// csvFile.getParentFile().mkdir();File parent = csvFile.getParentFile();if (parent != null && !parent.exists()) {parent.mkdirs();}csvFile.createNewFile();// GB2312使正确读取分隔符","csvFileOutputStream = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(csvFile), "GB2312"), 1024);// 写入文件头部for (Iterator propertyIterator = rowMapper.entrySet().iterator(); propertyIterator.hasNext();) {java.util.Map.Entry propertyEntry = (java.util.Map.Entry) propertyIterator.next();csvFileOutputStream.write("\""+ propertyEntry.getValue().toString() + "\"");if (propertyIterator.hasNext()) {csvFileOutputStream.write(",");}}csvFileOutputStream.newLine();// 写入文件内容for (Iterator iterator = exportData.iterator(); iterator.hasNext();) {Object row = (Object) iterator.next();System.out.println(row);for (Iterator propertyIterator = rowMapper.entrySet().iterator(); propertyIterator.hasNext();) {java.util.Map.Entry propertyEntry = (java.util.Map.Entry) propertyIterator.next();System.out.println(BeanUtils.getProperty(row, propertyEntry.getKey().toString()));csvFileOutputStream.write("\""+ BeanUtils.getProperty(row, propertyEntry.getKey().toString()) + "\"");if (propertyIterator.hasNext()) {csvFileOutputStream.write(",");}}if (iterator.hasNext()) {csvFileOutputStream.newLine();}}csvFileOutputStream.flush();} catch (Exception e) {e.printStackTrace();} finally {try {csvFileOutputStream.close();} catch (IOException e) {e.printStackTrace();}}return csvFile;}public static void main(String[] args) {List exportData = new ArrayList<Map>();Map row1 = new LinkedHashMap<String, String>();row1 = new LinkedHashMap<String, String>();row1.put("1", "21");row1.put("2", "22");row1.put("3", "23");row1.put("4", "24");exportData.add(row1);List propertyNames = new ArrayList();LinkedHashMap map = new LinkedHashMap();map.put("1", "第一列");map.put("2", "第二列");map.put("3", "第三列");map.put("4", "第四列");CSVUtils.createCSVFile(exportData, map, "d:/a/mm/", "活动目录");}}
0 0
- java导出CSV文件
- java导出CSV文件
- java 导出csv文件
- java导出CSV文件
- java 导出csv文件
- Java 导出 .csv 文件
- java导出csv文件
- Java导出CSV文件
- java 导出csv文件问题
- java数据库csv文件导出
- Java导入导出CSV文件
- java web 导出csv文件
- java web app 导出csv excel 文件
- js和Java导出Excel,csv文件
- Java导出CSV文件实例程序
- Java导出csv文件乱码的解决方法
- JAVA操作csv文件(导入导出)
- java实现无组件导出CSV文件
- 为UITextField添加placeholder属性
- PG_全角转半角函数
- 用instancetype代替id作为返回值
- ab压力测试.
- 怎样避免(F5)刷新页面造成的重复提交
- java 导出csv文件
- 响应式Web设计的9项基本原则
- BAT脚本编写教程
- 开发:随笔记录之 OSGI的jar添加几个小问题及其注意的地方
- 5段SQL可以测试出你对SQL性能优化知识了解多少
- Android SDK更新以及ADT更新出现问题
- nginx proxy_cache配置
- SQL验证字符是否是数值
- iOS解析XML文档的SDK