0
点赞
收藏
分享

微信扫一扫

java生成CSV文件

阎小妍 2022-03-13 阅读 37
java
/**
 * 生成csv文件
 *  
 * @param fileName 生成的文件名
 * @param list 要生成的数据
 */
public void exportToCsvFile(List<StraffPhoneEntity> list, String fileName){
	if (list!=null && list.size() > 0){
		/*
		 * 表格头
		 * CSV文件路径及名称
		 * filePath 文件生成地址 
		 */
		String filePath = proMapper.selectByKeyid(STAFF_INFO_CVS_PATH);
		//String filePath = STAFF_INFO_CVS_PATH; //CSV文件路径
		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();
			}
		}
	}
}
举报

相关推荐

0 条评论