当前位置: 首页 > news >正文

CSV 文件生成工具

1、CSV 文件

“csv是逗号分隔值文件格式,可以用电脑自带的记事本或excel打开,csv其文件以纯文本形式存储表格数据,纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。”

nodepad+

excel

2、CSV 生成工具类

CSVUtils

packagecom.lolo;importjava.io.*;importjava.nio.charset.StandardCharsets;importjava.util.List;publicclassCSVUtils{publicstaticFilecreateCSVFile(List<Object>head,List<List<Object>>dataList,StringoutPutPath,StringfileName){FilecsvFile=null;BufferedWritercsvWriter=null;try{csvFile=newFile(outPutPath+File.separator+fileName+".csv");Fileparent=csvFile.getParentFile();if(parent!=null&&!parent.exists()){parent.mkdirs();}csvFile.createNewFile();csvWriter=newBufferedWriter(newOutputStreamWriter(newFileOutputStream(csvFile),StandardCharsets.UTF_8),1024);//写入文件头部writeRow(head,csvWriter);//写入文件内容for(List<Object>row:dataList){writeRow(row,csvWriter);}}catch(Exceptione){e.printStackTrace();}finally{try{csvWriter.close();}catch(IOExceptione){e.printStackTrace();}}returncsvFile;}privatestaticvoidwriteRow(List<Object>row,BufferedWritercsvWriter)throwsIOException{for(Objectdata:row){// StringBuffer sb = new StringBuffer();// String rowStr = sb.append("\"").append(data).append("\",").toString();StringrowStr="\""+((data==null||"".equals(data))?"-":data)+"\t"+"\",";csvWriter.write(rowStr);}csvWriter.newLine();}}

Test.java

packagecom.lolo;importjava.io.File;importjava.util.ArrayList;importjava.util.List;publicclassTest{publicstaticvoidmain(String[]args){List<Object>exportData=newArrayList<Object>();exportData.add("第一列");exportData.add("第二列");exportData.add("第三列");List<List<Object>>datalist=newArrayList<List<Object>>();List<Object>data=newArrayList<Object>();data.add("111");data.add("222");data.add("333");List<Object>data1=newArrayList<Object>();data1.add("444");data1.add("555");data1.add("\t2020-09-16 01:15:16\t");datalist.add(data);datalist.add(data1);Stringpath="d:/data/exportCsv/";StringfileName="CSV 文件导出22222";Filefile=CSVUtils.createCSVFile(exportData,datalist,path,fileName);StringfileName2=file.getName();System.out.println("文件名称:"+fileName2);}}
http://www.cnnetsun.cn/news/3134395.html

相关文章:

  • AI剪辑实战指南:从原理到应用,解析Insta360如何提升视频创作效率
  • .net core webapi 添加 swagger 调试
  • 融云荣获「2023 中国数字生态通信领军企业」奖
  • Vue3-Eslint配合prettier完成代码风格配置
  • AppShark静态污点分析:Android应用安全深度检测实战指南
  • Dify大模型接入实战:从云端API到本地部署的完整指南
  • 三步搞定跨语言障碍:STranslate翻译工具完全指南
  • AI 学习路径推荐:别把薄弱点变成焦虑清单
  • Vanna 2.0企业级自然语言SQL生成架构解析与生产环境部署实战
  • Beep-Beep用户端界面设计:从UI组件到完整交互流程详解
  • Vendure插件系统完全指南:现代无头电商架构的扩展核心
  • 告别硬盘混乱:12个Krokiet工具让你轻松找回50GB空间
  • Crucible与LLVM集成教程:构建C/C++程序的符号验证流程
  • tools.cli高级技巧:如何优雅处理复杂命令行参数与子命令
  • MZmine 3终极指南:如何免费快速处理质谱数据的完整解决方案
  • 计算机毕业设计之jsp浪淘音乐网站的设计与实现
  • 炉石传说终极增强插件:HsMod 55个功能完整指南与快速配置教程
  • 【免费下载】 E-Hentai-Downloader:一键下载E-Hentai图库的利器
  • 解锁iOS设备潜能:palera1n越狱工具完整指南
  • Crucible高级技巧:提升符号模拟效率的10个实用方法
  • 从源码到二进制:揭秘readpe的libpe核心库设计与实现原理
  • AES-CBC数据解密实战:独立密钥、IV与跨平台对接全解析
  • HsMod终极指南:如何用BepInEx框架打造个性化炉石传说体验
  • 如何让AI告别平庸设计:Taste-Skill完整使用指南与实战技巧
  • 终极Blender资源大全:200+免费插件与素材库完整指南
  • 5步构建智能金融交易大脑:TradingAgents多智能体框架实战指南
  • Ornith-1.0-9B-MTP-GGUF量化版本对比:Q4_K_M、Q8_0还是IQ系列?哪款最适合你的硬件
  • ZFS-inplace-rebalancing安全使用指南:避免数据丢失的关键步骤
  • HsMod:基于BepInEx框架的炉石传说功能增强插件技术解析
  • 免费歌词批量获取工具:3分钟搞定网易云QQ音乐歌词整理