生成CSV文件的方法*(LIST集合为数据和生成的文件名)

/**
     * 生成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();
                }
            }
        }
    }

  

posted on 2021-04-09 11:16  海哥哥99  阅读(871)  评论(0编辑  收藏  举报

导航