/** * 生成csv文件 * @param pointsList 组织实体 * filename 生成的文件名 * list 要生成的数据 * @return */ public void PointsToCsvFile(List<StraffPhoneEntity> list, String filename){ if (list!=null && list.size() > 0){ // 表格头 //CSV文件路径及名称 /* * filePath 文件生成是地址 可以是C://文件夹 */ String filePath = proMapper.selectByKeyid(STAFF_INFO_CVS_PATH); //String filePath = STAFF_INFO_CVS_PATH; //CSV文件路径 String fileName = filename; File csvFile = null; BufferedWriter csvWriter = null; try { /* * File.separator * 这个是file自带的获取当前的系统是win还是linux系统 对应加载‘/’还是‘//’ */ System.out.println("文件地址为:"+filePath + File.separator + fileName); csvFile = new File(filePath + File.separator + fileName); File parent = csvFile.getParentFile(); if (parent != null && !parent.exists()) { parent.mkdirs(); } csvFile.createNewFile(); // GB2312使正确读取分隔符"," csvWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(csvFile), "GB2312"), 1024); // 写入文件内容 for (StraffPhoneEntity points : list) { csvWriter.write(JSON.toJSONString(points)); csvWriter.newLine(); } csvWriter.flush(); System.out.println("生成手机TXT文件成功"); } catch (Exception e) { System.out.println("生成手机TXT文件失败"); e.printStackTrace(); /*SendSms.sendSmsToMobile(MOA_DATA_ERROR_PHONE, "\"考勤管理系统:\"生成文件错误!时间:" + DateUtil8.currentDayStr("yyyy-MM-dd HH:mm:ss") + ";");*/ } finally { try { csvWriter.close(); } catch (IOException e) { e.printStackTrace(); } } } }
原文:https://www.cnblogs.com/xhj-java/p/14636322.html