Java设置生成文件编码格式带BOM【csv】【hutool】【java】
Background
之前做的一个数据导出功能,生成的csv文件,编码格式UTF-8,后来客户反应说文件打开中文乱码,一问用的是office excel,实验后最终发现UTF-8-BOM格式就没问题。这里记录下过程,代码中使用了Hutool工具类。
源码
@Testpublic void Test1() {String filePath = "d://test/b.csv";FileOutputStream fos = null;CsvWriter writer = null;try {File file = new File(filePath);// 自动创建目录FileUtil.mkdir(file);// 先写入 UTF-8-BOM 编码头内容byte[] uft8bom = {(byte) 0xef, (byte) 0xbb, (byte) 0xbf};fos = new FileOutputStream(file, true);fos.write(uft8bom);// 然后写入文件内容writer = CsvUtil.getWriter(file, CharsetUtil.CHARSET_UTF_8, true);List<String> header = ListUtil.toList("数据时间", "温度(℃)", "压力(MPa)", "流量(t/h)");writer.write(header.toArray(new String[0]));} catch (Exception e) {e.printStackTrace();} finally {// 关闭流IoUtil.close(fos);IoUtil.close(writer);}}
最终生成的文件如下所示
Java设置生成文件编码格式带BOM【csv】【hutool】【java】相关推荐
- 红黑树在java中的作用_带你真正理解Java数据结构中的红黑树
红黑树是平衡的二叉树,它不是一个完美的平衡二叉树,但是在动态插入过程中平衡二叉搜索树的代价相对较高,所以红黑树就此出现,下面就让爱站技术频道小编带你一起进入下文了解一下吧! 一.红黑树所处数据结构的位 ...
- 谈谈java面向对象之抽象,手把手带你搞定java面试之面向对象
计算机语言晦涩难懂,打算利用通俗易懂的文字带领大家学习java基础.如果文中有什么错误的地方,欢迎大家在评论区指正,免得我误人子弟. Question:当面试JAVA开发岗位的时候,面试官最爱问的问题 ...
- java两个文件夹比较路径_比较Java中两个文件的路径
java两个文件夹比较路径 Given the paths of the two files and we have two compare the paths of the files in Jav ...
- java 设置mime type_将Mimetype添加到MimetypesFileTypeMap - java
我在将Mimetypes添加到MimetypesFileTypeMap时遇到问题.我已经尝试添加META-INF / mime.types文件,就像Documentation所说的那样.但Mimety ...
- linux java编译后生成文件_Linux终端编译并执行Java文件
shell 中操作: 1.先创建java项目目录,名称project. mkdir project 2.在项目中创建src和bin目录,src下用于存放 ".java" 文件,bi ...
- 设置更改文件编码格式
一.保存时更改编码 直接在文件保存时 选择编码格式 如下图,将文件编码更改为UTF-8: 二.用文本编辑器 保存时更改编码类型较少,为了更改其他编码格式,可以利用文本编辑器进行更改编码格式 比如Not ...
- linux生成文件自带时间,linux生成固定日期文件及删除一定日期前的文件
一.按照一定日期格式命名文件 1.按照一定的格式输出日期: date +"%y%m%d" 格式说明: % : 印出 % %n : 下一行 %t : 跳格 %H : 小时(00-23 ...
- java 存储png文件_vue图片上传及java存储图片(亲测可用)
1.前言 在使用elementui的upload组件时,我一直无法做到上传的图片和其他数据一起提交.单纯的上传文件,java的存储图片的方式也有局限性. 我知道的后端保存图片有两种方式:一种是直接存储 ...
- java 解锁关闭文件占用_程序员:Java文件锁定、解锁和其它NIO操作
文件锁 java中i/o的文件锁定有两种:一种是独占锁,一种是共享锁. 共享锁既是共享读操作,但是只有一个可以进行写操作,共享锁防止其他正在运行的程序获取重复的独占锁,但是允许其他程序可以获取共享锁. ...
最新文章
- Tomcat的安装和环境变量配置
- 4.1.3 文件目录
- 织梦无子栏目时禁止调用同级栏目
- python 方法的实例_python调用自定义函数的实例操作
- ROS-手势控制小海龟移动
- IP地址子网的划分机制
- cesium米转换经纬度_Cesium 坐标系转换
- 3年flash游戏开发小结
- Python打码API(学习使用)
- Insyde uefi 隐藏设置_UEFI+GPT安装Windows10
- 尚学堂第十一章多线程习题答案
- python tkinter输入框_自制tkinter输入框Inputbox类
- 机器学习之集成学习(七)随机森林scikit-learn库
- LeetCode——线段树
- 使用Matlab求解矩阵方程的解
- PHP WebShell源码下载(1)
- 1.贝尔曼方程(Bellman equation)
- Arduino点亮LED灯带
- 操作系统-CPU与外设交互方式
- Smartphone 2.0 = Phone + Service