java 生成 csv文件

java导出生成csv文件的方法 主要为大家详细介绍了java导出生成csv文件的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 立即下载

烟火_

java 生成 csv文件

 一、csv文件

  逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。
CSV是一种通用的、相对简单的文件格式,被用户、商业和科学广泛应用。最广泛的应用是在程序之间转移表格数据,而这些程序本身是在不兼容的格式上进行操作的(往往是私有的和/或无规范的格式)。因为大量程序都支持某种CSV变体,至少是作为一种可选择的输入/输出格式。

“CSV”泛指具有以下特征的任何文件:

  • 纯文本,使用某个字符集,比如ASCII、Unicode、EBCDIC或GB2312;
  • 由记录组成(典型的是每行一条记录);
  • 每条记录被分隔符分隔为字段(典型分隔符有逗号、分号或制表符;有时分隔符可以包括可选的空格);
  • 每条记录都有同样的字段序列。

二、示例

  相关代码如下:

复制代码

  1 package com.test.excel;
  2 
  3 import java.io.BufferedWriter;
  4 import java.io.File;
  5 import java.io.FileOutputStream;
  6 import java.io.IOException;
  7 import java.io.OutputStreamWriter;
  8 import java.net.URLEncoder;
  9 import java.util.ArrayList;
 10 import java.util.Arrays;
 11 import java.util.Date;
 12 import java.util.List;
 13 
 14 import org.junit.Test;
 15 
 16 /**
 17  * 创建CSV文件
 18  */
 19 public class CSVCrate {
 20 
 21     /**
 22      * 创建CSV文件
 23      */
 24     @Test
 25     public void createCSV() {
 26         
 27         // 表格头
 28         Object[] head = { "客户姓名", "证件类型", "日期", };
 29         List<Object> headList = Arrays.asList(head);
 30 
 31         //数据
 32         List<List<Object>> dataList = new ArrayList<List<Object>>();
 33         List<Object> rowList = null;
 34         for (int i = 0; i < 100; i++) {
 35             rowList = new ArrayList<Object>();
 36             rowList.add("张三" + i);
 37             rowList.add("263834194" + i);
 38             rowList.add(new Date());
 39             dataList.add(rowList);
 40         }
 41         
 42         String fileName = "testCSV.csv";//文件名称
 43         String filePath = "c:/test/"; //文件路径
 44         
 45         File csvFile = null;
 46         BufferedWriter csvWtriter = null;
 47         try {
 48             csvFile = new File(filePath + fileName);
 49             File parent = csvFile.getParentFile();
 50             if (parent != null && !parent.exists()) {
 51                 parent.mkdirs();
 52             }
 53             csvFile.createNewFile();
 54 
 55             // GB2312使正确读取分隔符","
 56             csvWtriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(csvFile), "GB2312"), 1024);
 57             
 58             //文件下载,使用如下代码
 59 //            response.setContentType("application/csv;charset=gb18030");
 60 //            response.setHeader("Content-disposition", "attachment; filename=" + URLEncoder.encode(fileName, "UTF-8"));
 61 //            ServletOutputStream out = response.getOutputStream();
 62 //            csvWtriter = new BufferedWriter(new OutputStreamWriter(out, "GB2312"), 1024);
 63             
 64             int num = headList.size() / 2;
 65             StringBuffer buffer = new StringBuffer();
 66             for (int i = 0; i < num; i++) {
 67                 buffer.append(" ,");
 68             }
 69             csvWtriter.write(buffer.toString() + fileName + buffer.toString());
 70             csvWtriter.newLine();
 71 
 72             // 写入文件头部
 73             writeRow(headList, csvWtriter);
 74 
 75             // 写入文件内容
 76             for (List<Object> row : dataList) {
 77                 writeRow(row, csvWtriter);
 78             }
 79             csvWtriter.flush();
 80         } catch (Exception e) {
 81             e.printStackTrace();
 82         } finally {
 83             try {
 84                 csvWtriter.close();
 85             } catch (IOException e) {
 86                 e.printStackTrace();
 87             }
 88         }
 89     }
 90     
 91     /**
 92      * 写一行数据
 93      * @param row 数据列表
 94      * @param csvWriter
 95      * @throws IOException
 96      */
 97     private static void writeRow(List<Object> row, BufferedWriter csvWriter) throws IOException {
 98         for (Object data : row) {
 99             StringBuffer sb = new StringBuffer();
100             String rowStr = sb.append("\"").append(data).append("\",").toString();
101             csvWriter.write(rowStr);
102         }
103         csvWriter.newLine();
104     }
105 }

复制代码

Java生成CSV文件实例详解 主要介绍了Java生成CSV文件的方法,很实用的功能,需要的朋友可以参考下 立即下载

相关推荐

从BIN文件到可烧录程序:深入理解ADI DSP程序读取背后的原理与安全边界

本文深入探讨了ADI DSP程序从BIN文件到可烧录程序的转换原理与安全边界,详细解析了JTAG接口、仿真器工作流程及Flash存储结构。通过Visual DSP++工具,开发者可以理解程序读取的底层机制,同时强调了知识产权保护的重要性,为嵌入式开发提供了实用建议。

weixin_27956639的博客 263

Java 生成CSV文件

java生成csv文件

Tongyao 9382

手把手教你在VirtualBox里复活Win98,并搞定驱动和文件传输(含资源寻找攻略)

本文详细指导如何在VirtualBox中安装和配置Windows 98,包括驱动安装、文件传输等实用技巧。通过逐步教程和资源寻找攻略,帮助技术爱好者完美复刻这一经典操作系统,满足怀旧或兼容性测试需求。

weixin_29596051的博客 325

Java中的CSV生成

在如今这个数据为王的时代,如何高效地生成和处理CSV文件成了程序员们必备的技能之一。对于Java开发者而言,生成CSV文件的需求更是时常遇见。话不多说,让我们直接进入主题,探讨几种在Java中生成CSV文件的方式。有时候,我们需要生成自定义格式的CSV文件,例如需要特定的分隔符或定制的字段处理逻辑。下面展示一种通过Java流式API实现自定义CSV格式的方法。

weixin_46372265的博客 2830

伺服驱动器485通信

485通信使用方法,485通信在上位机和伺服驱动器之间的应用,根据需要驱动电机旋转。

haipi511715316的博客 1万+

全志D1s RISC-V开发板硬件设计与Linux启动全流程解析

RISC-V架构是当前国产嵌入式处理器演进的核心方向,其启动流程涵盖从BootROM、SPL到U-Boot及Linux内核的多级引导机制。理解该流程需掌握DDR初始化、设备树适配、电源时序控制等底层原理,技术价值在于构建可追溯、可调试、可量产的最小可行系统(MVS)。典型应用场景包括边缘AI推理终端、工业HMI和轻量级网关等对成本与开源性敏感的领域。本文以全志D1s平台为载体,深入剖析基于玄铁C906内核的RISC-V SoC在真实硬件上的启动验证、电源完整性设计与Linux全链路开源实践。

weixin_32306683的博客 358

java生成csv文件

CSV生成示例

qq_41657996的博客 6444

MATLAB下pdf文件操作读取示例

当遇到一些需要大量数据的项目,数据的读取与储存显得尤为重要。怎样把数据从其他格式的文件中读取,并运用到程序中是很多时候我们要解决的问题。对于平常的.txt,和.xlsx文件,MATLAB有对应的函数帮助读取,但是遇到pdf文件时MATLAB很难读取内容。本文以一个操作实例提供了一个从pdf文件中读取数据的方法。

UESTC 五高考3模拟的博客 6558

java 生成csv文件_Java生成CSV文件实例详解

本文实例主要讲述了java生成csv文件的方法,具体实现步骤如下:1、新建csvutils.java文件:package com.saicfc.pmpf.internal.manage.utils;import java.io.bufferedwriter;import java.io.file;import java.io.fileinputstream;import java.io.filen...

weixin_32512933的博客 5646

基于FPGA的UDP 通信(六)

本文基于FPGA和MATLAB对千兆以太网通信模块UDP数据发送(FPGA发送)进行联合调试。

记录所学,分享知识,结识挚友 4729

MTK Camera HAL 与 FeaturePipe 架构解析:从硬件抽象到功能管线的工程落地路径

MTK 的 Camera 系统在 Android 平台下采用高度模块化的 HAL 与 FeaturePipe 架构组合,分别承担着底层硬件抽象与上层功能封装的职责。通过将 ISP、3A 算法、Sensor 驱动与图像处理节点解耦封装于功能链条中,联发科平台实现了灵活可控的影像能力调度机制。本文将基于真实项目实践,系统解析 MTK Camera HAL 与 FeaturePipe 架构的设计思路、核心模块与运行机制,结合 AE/AWB/AF 控制流、Buffer 管理策略、功能管线构建方法与多线程调度实现方式

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 1571

JAVA 生成CSV文件

比较简单, 直接上代码咯 /** * CSV文件生成方法 * @param head 文件头 * @param dataList 数据列表 * @param outPutPath 文件输出路径 * @param filename 文件名 * @return */ public static File createC...

菜猿子的博客 2万+

SQL进阶技巧:数据预处理如何对数据进行分桶【分箱】?

本文详细介绍了数据分析中常见的几种分桶方式:基于业务规则的分桶、等距分桶及等频分桶等,针对每种分桶方式给出了SQL实现

石榴姐yyds 4018

java生成CSV文件

内容简介 本文内容使用java实现数据生成CSV文件,有关CSV文件知识请参考:CSV (逗号分隔值文件格式) 实现代码(仅供参考,请根据实现情况来修改) /** * 坐标点参数实体类 */ public class PointsParamDto { /** * 坐标id(由1开始,累加1,这样的:1,2,3,4,5...) */...

albjxn4742的博客 234

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

csv文件 java_Java生成CSV文件实例详解

本文实例主要讲述了Java生成CSV文件的方法,具体实现步骤如下:1、新建CSVUtils.java文件:package com.saicfc.pmpf.internal.manage.utils;import java.io.BufferedWriter;import java.io.File;import java.io.FileInputStream;import java.io.FileN...

weixin_35698805的博客 398

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

java 生成 csv文件_JAVA 自动生成本地CSV文件

/*** CSV文件生成方法* @param head 文件头* @param dataList 数据列表* @param outPutPath 文件输出路径* @param filename 文件名* @return*/public static File createCSVFile(List head, List> dataList,String outPutPath, String f...

weixin_39592315的博客 390

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

java中csv文件怎么制作_Java生成CSV文件实例详解

本文实例主要讲述了Java生成CSV文件的方法,具体实现步骤如下:1、新建CSVUtils.java文件:package com.saicfc.pmpf.internal.manage.utils;import java.io.BufferedWriter;import java.io.File;import java.io.FileInputStream;import java.io.FileN...

weixin_42241165的博客 649

java中csv文件怎么制作_java写csv文件 java代码怎样生成csv文件

java怎样写入一个csv文件所以你写csv表格,这么做就可以了,每写一列就加一个,就是第二列。 距离有个BufferWriter writer对象要写一个csv文件。 writer.wrtie("第一列"); writer.write(","); writer.write("第二列"); 这就是一个简单的用,分割的csv文件。用JAVA如何实现写CSV文件看你用来做什么了, 该功能可简单,可复杂...

weixin_30369779的博客 758

Java生成CSV文件的方法

http://www.cnblogs.com/dreammyle/p/5458280.html本文实例主要讲述了Java生成CSV文件的方法,具体实现步骤如下:1、新建CSVUtils.java文件:package com.saicfc.pmpf.internal.manage.utils; import java.io.BufferedWriter; import java.io.File; ...

伏虎游侠的博客 3586

java的csv格式文件的生成,以及获取,以及获取csv某一列

以下是共有方法,在赋值下列方法时将共有方法先拷进去 /** * 功能说明:获取UTF-8编码文本文件开头的BOM签名。 * BOM(Byte Order Mark),是UTF编码方案里用于标识编码的标准标记。例:接收者收到以EF BB BF开头的字节流,就知道是UTF-8编码。 * @return UTF-8编码文本文件开头的BOM签名 */ ...

Big_Viagra的博客 1806

java生成csv_java生成CSV文件

/*** 生成csv文件*@parampointsList*@return*/private void PointsToCsvFile(ListpointsList){if (pointsList!=null && pointsList.size() > 0){//表格头String[] headArr = new String[]{"PointId", "X", "Y"};...

weixin_29620579的博客 2204

Java生成CSV文件

1、新建CSVUtils.java文件: package com.saicfc.pmpf.internal.manage.utils; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import j

孤雁是天的寂寞 9471

如何在Java中生成大量随机CSV文件

Ťhis post was originally posted on my blog The CSV format is a simple but commonly used format for exchanging data. Many applications support the import and export of information as CSV...

专业的开发者“讨论” 664
上一篇: java文件操作getAbsolutePath和getCanonicalPath的区别
下一篇: java 删除指定文件夹 以及文件下下面的所有文件
javaPie
博客等级 码龄16年 1171粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值