java导出csv文件

啥也不说了,直接上代码。代码上又解释:

package hhit.HIVECount.hive;

import java.io.IOException;
import java.nio.charset.Charset;
import java.util.List;

import com.csvreader.CsvWriter;

import hhit.HIVECount.hive.bean.IpPortCount;
import hhit.HIVECount.hive.bean.PortCount;

public class ExportCsv {
	/**
	 * 每个端口总数量写入csv文件  
	 * 
	 * @param list 数据集合(通过数据库查询获得的list集合,存储的是对象)
	 * @param csvHeaders  标头信息
	 */
	public static void writePortToCSV(List<PortCount> list,String[] csvHeaders,String time) {  
	         // 定义一个CSV路径,也可以写到"D:/"  D盘中,本文写到了项目的  (D:\work\HIVECount\target\classes)
		 String csvFilePath = Thread.currentThread().getContextClassLoader().
				              getResource(".").getPath()+"PortCount-"+time+".csv";
	    
	    try {  
	        // 创建CSV写对象 例如:CsvWriter(文件路径,分隔符,编码格式);  
	        CsvWriter csvWriter = new CsvWriter(csvFilePath, ',', Charset.forName("UTF-8"));  
	        // 写表头  
	        csvWriter.writeRecord(csvHeaders);  
	        // 写内容  
	        for (PortCount ipport:list) {  
	            String[] csvContent = { ipport.getCountryName(), ipport.getProvince(),ipport.getCity(),
	            		 String.valueOf(ipport.getPort()),String.valueOf(ipport.getPortCount())};  
	            csvWriter.writeRecord(csvContent);  
	        }  
	        csvWriter.close();  
	        System.out.println("--------writePortToCSV文件已经写入--------");  
	    } catch (IOException e) {  
	        e.printStackTrace();  
	    }  
	}  
	/**
	 * Ip和端口数量写入csv
	 * @param list
	 * @param csvHeaders
	 */
	public static void WriteIpPortToCSV(List<IpPortCount> list,String[] csvHeaders,String time) {  
	    // 定义一个CSV路径  
		String csvFilePath = Thread.currentThread().getContextClassLoader().
				              getResource(".").getPath()+"IpPortCount-"+time+".csv";
	    try {  
	        // 创建CSV写对象 例如:CsvWriter(文件路径,分隔符,编码格式);  
	        CsvWriter csvWriter = new CsvWriter(csvFilePath, ',', Charset.forName("UTF-8"));  
	        // 写表头  
	        csvWriter.writeRecord(csvHeaders);  
	        // 写内容  
	        for (IpPortCount ipc:list) {  
	            String[] csvContent = { ipc.getCountryName(), ipc.getProvince(),ipc.getCity(),
	            		String.valueOf(ipc.getTargetCount()),String.valueOf(ipc.getPortCount())};  
	            csvWriter.writeRecord(csvContent);  
	        }  
	        csvWriter.close();  
	        System.out.println("--------WriteIpPortToCSV文件已经写入--------");  
	    } catch (IOException e) {  
	        e.printStackTrace();  
	    }  
	}  
}






















  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值