`
vefan
  • 浏览: 85601 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java创建csv文件

阅读更多
package com.vefan.csv;

import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.nio.channels.FileChannel;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import com.vefan.common.util.FileUtils;

public class CsvWriter
{

	public static void main(String args[]){
		CsvWriter cw = new CsvWriter();
		String csvFile = "E:/workspace/JavaApp/csv/createCSV.csv";
		cw.createCSV(csvFile);
		
		String localPath = "E:/workspace/JavaApp/csv/";
		String fName = "createCsvByList.csv";
		String sTitle = "ID,NAME,SEX,EMAIL,TEL";
		List listSource = new ArrayList();
		listSource.add("1,tomcat,male,tomcat@tomcat.com,1383838438");
		listSource.add("2,Jboss,male,jboss@jboss.com,1484848748");
		
		cw.createCSVByList(listSource, sTitle, localPath, fName);
	}
	
	/**
	 * 复制csv文件
	 * @param source 源文件
	 * @param dest   目标文件
	 * */
	public void copyCSV(String source, String dest){
		try
		{
			FileChannel in = new FileInputStream(source).getChannel();
			FileChannel out = new FileOutputStream(dest).getChannel();
			
//			in.transferTo(0, in.size(), out);
			out.transferFrom(in, 0, in.size());
			
			in.close();
			out.close();
		} catch (Exception e)
		{
			e.printStackTrace();
		}
	}
	
	/**
	 * 创建csv文件
	 * @param csvFile csv完整文件名
	 * */
	public void createCSV(String csvFile){
		FileWriter fw = null;
		try
		{
			fw = new FileWriter(csvFile);
			fw.write("ID,CODE,NAME,EMAIL,TEL\r\n");
			fw.write("1,system,上将,vefan@hotmail.com,15935785489\r\n");
			fw.write("2,sysman,中尉,vefan@hotmail.com,15687596324\r\n");
			fw.write("3,sys,少尉,vefan@hotmail.com,15826589752\r\n");
			
			fw.flush();
			fw.close();
		} catch (IOException e)
		{
			e.printStackTrace();
		}finally{
			if(null != fw){
				try
				{
					fw.close();
				} catch (IOException e)
				{
					e.printStackTrace();
				}
			}
		}
		
	}
	
	/**
	 * 创建csv文件
	 * @param listSource 行数据
	 * @param sTitle     字段名
	 * @param localPath  目录路径
	 * @param fName      文件名
	 * */
	public void createCSVByList(List listSource, String sTitle, String localPath, String fName){
		ByteArrayOutputStream out = new ByteArrayOutputStream();
		FileOutputStream fos = null;
		try
		{
			out.write(sTitle.getBytes());
			out.write(",".getBytes());
			out.write("\n".getBytes());
			
			Iterator it = listSource.iterator();
			while(it.hasNext()){
				String value = (String)it.next();
				out.write(value.getBytes());
				out.write(",".getBytes());    //以逗号为分隔符
				out.write("\n".getBytes());   //换行
			}
			//没有目录,先生成目录
			FileUtils fileTool = new FileUtils();
			fileTool.newFolder(localPath);
			
			File newfile = new File(localPath,fName);
			
			fos = new FileOutputStream(newfile);
			fos.write(out.toByteArray());
			
			fos.flush();
			out.close();
			fos.close();
		} catch (IOException e)
		{
			e.printStackTrace();
		}finally{
			try
			{
				if(null != out) out.close();
				if(null != fos) fos.close();
			} catch (IOException e)
			{
				e.printStackTrace();
			}
		}
		System.out.println("生成"+fName+"完成");
	}
	
}
分享到:
评论

相关推荐

    一个简单的java生成CSV文件

    一个简单的java生成CSV文件

    读取创建CSV文件并自动解析文件编码方式

    本文将深入探讨如何读取和创建CSV文件,并特别关注自动解析文件编码方式这一关键环节。我们将使用Java语言进行示例,同时引入第三方库来辅助处理编码问题。 首先,创建CSV文件的基本过程涉及将数据写入具有特定分隔...

    java 导出csv文件并上传sftp

    本篇文章将深入探讨如何使用univocity-parsers库来创建CSV文件,以及如何利用JSCH库将生成的CSV文件上传到SFTP(Secure File Transfer Protocol)服务器。 首先,让我们了解univocity-parsers库。这是一个强大的...

    java使用javacsv读取csv文件 导入Mysql数据库

    首先,`javacsv`是一个轻量级的Java库,专门用于处理CSV文件。它提供了简单易用的API,使我们能够轻松地读取和写入CSV数据。在项目中使用这个库,你需要先将其添加到你的类路径中。如果你使用的是Maven,可以在pom....

    java读取csv文件并将读取的数据写入新生成的csv文件

    在我们需求中需要读取一个csv文件的数据,但是只有旧的csv的几列数据再新写入一个csv文件,而且在旧的数据有空的数据,需要判断旧的csv的空值。可能写的存在不完善!但是应用的需求里面还是能用的

    Java操作csv文件

    要创建新的CSV文件或者向已有文件追加数据,可以使用`CSVPrinter`类。以下代码展示了如何写入CSV数据: ```java import org.apache.commons.csv.*; public class CSVWriter { public static void main(String...

    java导出csv文件并压缩(含下载提示功能)

    首先,我们需要了解如何在Java中生成CSV文件。CSV文件主要由一系列行组成,每行包含一个或多个以逗号分隔的值。在Java中,我们可以使用`BufferedWriter`或者`PrintWriter`来创建和写入这些文件。例如: ```java ...

    Java生成CSV文件实例详解

    下面将详细解释如何使用Java生成CSV文件,以`CSVUtils`类为例进行说明。 首先,`CSVUtils`类通常包含用于生成CSV文件的核心方法。在给出的代码中,`createCSVFile`方法是生成CSV文件的主要入口。该方法接收四个参数...

    java对csv文件进行读写操作

    `javacsv`是由Dave Taylor创建的一个小型库,专门用于读写CSV文件。下面我们将详细探讨如何使用Java和`javacsv`库对CSV文件进行读写操作。 **1. 添加javacsv依赖** 在进行读写操作前,你需要将`javacsv.jar`添加到...

    Java解析CSV文件

    本篇将详细介绍如何在Java中解析CSV文件,并以给定的"Java解析CSV文件"主题为例,结合提供的资源——`lucky_number_format.csv`、`javacsv-2.0.jar`和`CsvUtil.java`进行深入探讨。 首先,我们来看`javacsv-2.0.jar...

    java 读写 csv 文件

    本篇文章将深入探讨如何使用Java来读取和写入CSV文件,并介绍一些通用的接口和方法。 首先,Java标准库并未提供专门处理CSV的类,但我们可以借助第三方库如Apache Commons CSV、OpenCSV或Java 8及以上版本的内置`...

    java实现导出csv文件并上传sftp

    本篇文章将深入探讨如何使用Java实现CSV文件的生成,并将其通过SFTP(Secure File Transfer Protocol)协议上传到指定服务器。 首先,我们要介绍的是用于生成CSV文件的库:univocity-parsers。这是一个高效、灵活且...

    java导出CSV文件,EXCEL文件(不用指定下载路劲)

    在Java中,我们可以使用`BufferedWriter`或者Apache Commons CSV库来实现CSV文件的创建。 1. 使用`BufferedWriter`: ```java import java.io.*; public void exportCSV(String[] headers, List[]> data) { try ...

    javacsv_CsvReader:解析CSV文件

    2. **创建CsvReader实例**:创建`CsvReader`对象时,需要传入一个打开的`BufferedReader`,该`BufferedReader`通常基于一个指向CSV文件的`FileInputStream`或`InputStreamReader`。 ```java File file = new File...

    JAVA导入CSV文件

    当需要处理这些数据时,Java提供了一些库和方法来读取、解析和操作CSV文件,进而将这些数据写入数据库。 首先,我们来讨论如何在Java中读取CSV文件。最常用的库是Apache Commons CSV和OpenCSV。这两个库都提供了...

    java读取csvjava 按顺序创建文件

    创建CSV文件的基本步骤包括打开输出流、写入数据并关闭输出流。以下是一个简单的示例,使用`PrintWriter`来实现: ```java import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; ...

    java 读写csv文件 csv process

    这个"java 读写csv文件 csv process"接口为处理CSV文件提供了一个全面的解决方案,它不仅实现了基本的读写功能,还支持数据转换和高级的文件修改操作。这样的接口对于需要处理CSV数据的Java项目来说非常实用,简化了...

    java导出生成csv文件的方法

    【Java生成CSV文件的背景】 在Java中,处理Excel文件通常使用Apache POI库,虽然POI功能强大,但处理大量数据时会占用大量内存,尤其是在导出数据时。为了解决这个问题,开发者可以转向生成CSV文件,因为CSV文件本质...

    读取csv文件中指定行列的数据

    在Eclipse中,你可以创建一个新的Java项目,将CSV文件放入项目的资源目录下,然后编写上述代码进行测试。记得在运行前检查CSV文件的编码格式,确保与Java程序的编码设置一致,以防止乱码问题。 通过这种方式,你...

    csv解析 javacsv2.1解析csv文件的方法

    1. **创建CSVReader对象:** `CSVReader`是`javacsv`的核心类,用于读取CSV文件。创建`CSVReader`对象时,通常需要提供一个`BufferedReader`,该`BufferedReader`应该已经打开并指向CSV文件。例如: ```java ...

Global site tag (gtag.js) - Google Analytics