java页面导出csv格式乱码问题解决

easyexcel 3.0.5 导入导出csv格式文本问题总结 String[] content = {"张三", "18", "男", "" + LocalDateTime.now()};// 例如:UTF-8,UTF-16BE.String[] content = {"张三", "18", "男", "" + LocalDateTime.now()};// list.add(new dmeo("王二麻","11","qdddzhangsan展示柜"));String[] headers = {"姓名", "年龄", "性别", "日期"}; 阅读详情

问题描述:java页面导出的csv格式的表格,用excel打开有乱码,但是用记事本打开没有乱码能够正常显示。

问题代码:

ServletActionContext.getResponse().reset();// 清空输出流
            ServletActionContext.getResponse().setHeader(
                    "Content-disposition",
                    "attachment; filename=" + Common.DateFormat(new Date(), "yyyy-MM-dd HH:mm:ss")
                            + "ChannelIndicator.csv");// 设定输出文件头
            ServletActionContext.getResponse().setContentType("application/csv");// 定义输出类型
            HttpServletResponse response = ServletActionContext.getResponse();
            // 设置字符集
            response.setContentType("text/plain");// 设置输出为文字流
            response.setCharacterEncoding("UTF-8");
            PrintWriter pw = null;
            try {
                pw = response.getWriter();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
问题原因:excel默认按平台默认的字符集ANSI打开文件,也就是说在windows平台上excel默认用gb2312打开文件,所以出现了之前的问题。知道问题原因更改就比较容易啦。

修改后的代码:

  ServletActionContext.getResponse().reset();// 清空输出流
            ServletActionContext.getResponse().setHeader(
                    "Content-disposition",
                    "attachment; filename=" + Common.DateFormat(new Date(), "yyyy-MM-dd HH:mm:ss")
                            + "ChannelIndicator.csv");// 设定输出文件头
            ServletActionContext.getResponse().setContentType("application/csv");// 定义输出类型
            // 在windows平台上导出的csv用excel导出是乱码,需要把字符集设置为gb2312
            HttpServletResponse response = ServletActionContext.getResponse();
            // 设置字符集
            response.setContentType("text/plain");// 设置输出为文字流
            response.setCharacterEncoding("gb2312");
            PrintWriter pw = null;
            try {
                pw = response.getWriter();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }




android导出CSV,中文乱码问题 前两天在书写demo的时候发现导出的csv文件到mac的excle打开是乱码 分析其中原因我概括为  1:导出时候是UTF-8的输出,用文本打开是不会出错的,          2:excle不是UTF-8文本协议,他采用的 阅读详情

相关推荐

解决CSV文件乱码问题的全面指南

CSV文件乱码是一个常见但令人烦恼的问题,其根本原因在于文件编码与打开软件之间的不匹配。使用文本编辑器更改编码。使用Excel的导入功能手动指定编码。使用其他软件(如Google Sheets、LibreOffice Calc)打开文件。使用命令行工具转换编码。此外,通过统一使用UTF-8编码、添加BOM标记以及使用专业工具,可以有效避免乱码问题的发生。希望本文能帮助您更好地处理CSV文件,提高工作效率!

私聊前往站内信:https://i.youkuaiyun.com/#/msg/chat/weixin_44976692 1万+

Excel/CSV 表格中被转换的E + 如何恢复

CSV/Excel 文本处理

梦幻通灵 1万+

java生成csv文件乱码的解决方法示例 java导出csv乱码

主要介绍了java生成csv文件乱码的解决方法,大家可以直接看下面的示例

JAVA导出CSV文件出现中文乱码

今天公司项目出现一个csv文件导出乱码问题,各种编码都试过了,就是不行 但是输出流设置一下BM标识就可以了 上代码 oOutput = oResponse.getOutputStream(); oOutput.write(0xef);//设置这个 oOutput.write(0xbb);//设置这个 oOutput.write(0xbf);//设置这个 oOutput.write(outData);

weixin_43700943的博客 2015

三大主流交易接口实战指南:XTP、CTP与数字货币API的实盘接入解析

本文深入解析了量化交易系统实现实盘交易的关键环节,聚焦于三大主流交易接口的实战接入。详细介绍了证券领域的XTP、期货领域的CTP以及数字货币交易所API的核心特性、代码封装要点与风控实践,并提供了多市场接口整合的统一架构方案,为开发者打通量化交易的“最后一公里”提供了一份接地气的实战指南。

win55的博客 1376

农经权二轮延包—地块示意图生成

本文介绍了地块示意图制作软件的使用方法及模板制作要点。软件通过设置六个参数(示意图模板、属性数据、地块DBF、导航图、地块图片及存放位置)自动生成Word文档,并可导出PDF。文章详细说明了5页Word模板的制作过程,包括页脚三栏设置和页码插入技巧,支持每户最多28个地块的情况。同时指出该软件生成的图片分辨率(300dpi)满足清晰度要求,并提及软件免费提供插件但收费提供后续服务。

weixin_47364423的博客 1116

JAVA 将查询的数据以CSV文件导出时产生乱码

1、问题 将查询的数据以xls文件导出时(UTF-8编码),数据正常;但以CSV文件导出时,文件中的中文乱码,同样是UTF-8编码,改成GBK编码导出时,中文显示正常。 本以为问题解决,后面导出含拉丁字符(如ÀÆÊàÌ)的数据时,以xls文件导出数据正常显示,以CSV文件导出时,文件中的拉丁字符显示为“?”号。 试着改成其他编码方式都无效,后面网上搜到了一篇解决该问题的方法。 2、解决方法...

zhouxukun123的专栏 5136

别再死磕RD算法了!用MATLAB手把手复现SAR后向投影(BP)成像(附完整代码与避坑点)

本文详细介绍了如何使用MATLAB实现合成孔径雷达(SAR)后向投影(BP)成像算法,突破传统RD算法在大斜视和复杂轨迹场景中的局限。通过完整的代码示例和避坑指南,帮助读者掌握BP算法的核心原理、内存优化策略和并行计算技巧,提升SAR成像精度与效率。

weixin_30908103的博客 298

  BOM —— Byte Order Mark,中文名译作“字节顺序标记”。在这里找到一段关于 BOM 的说明:...

  BOM —— Byte Order Mark,中文名译作“字节顺序标记”。在这里找到一段关于 BOM 的说明: BOM_百度百科BOMBOM —— Byte Order Mark,中文名译作“字节顺序标记”。在这里找到一段关于 BOM 的说明:在UCS 编码中...

266

利用ArcGIS创建渔网计算渔网内土地利用占比划分中国北方农牧交错带

依据土地利用数据,根据参考文献划分要求,利用ArcGIS创建渔网对地物进行重分类,划分农业带、牧业带以及农牧交错带。

m0_60672527的博客 3060

ValueError: numpy.dtype size changed, may indicate binary incompatibility. Expected 96 from C 解决方案

本文主要介绍了ValueError: numpy.dtype size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject解决方案,希望能对使用Numpy的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 1万+

java导出之csv乱码

java导出csv乱码

AiFlutter的博客 1906

学Simulink——基于Simulink的输入-输出线性化精确转矩控制

本文详细介绍了基于Simulink的永磁同步电机(PMSM)输入-输出线性化(IOL)精确转矩控制方法。针对传统解耦控制在非线性转矩特性下的局限性,提出通过精确反馈线性化实现转矩指令与实际转矩的严格线性关系。文章系统阐述了IOL原理、PMSM控制器推导过程,并提供了完整的Simulink建模步骤,包括电机模型搭建、IOL控制器实现和闭环系统构建。通过仿真对比验证了IOL方法在转矩跟踪精度、动态响应和参数鲁棒性方面的显著优势,最后讨论了工程实现要点和扩展应用方向。该方法为高性能伺服系统开发提供了有效解决方案。

amy_mhd的博客 61

解决导出CSV文件乱码的问题

这几天处理bug,在解决这个导出csv格式文件乱码的问题, 记录一下; 1,处理前代码 public static void exportList(String[] headers, String[] columns, List dtos, String sheetName, HttpServletResponse response) throws Exception { List he...

codeRunner-hd的博客 1万+

【ODX介绍】-5-用于Flash刷写的ODX-F文件概述

用于Flash刷写的ODX-F文件概述

「汽车电子助手」的博客 2531

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

JAVA导出CSV文件时产生乱码的解决方法

JAVA/SERVLET 以UTF-8导出CSV文件时产生乱码的解决方法 博客分类:  JSP & Servlet javaservletcsvexcel乱码  Java代码   OutputStreamWriter osw = new OutputStreamWriter(resp.getOutputStream(), "UTF-8");   //

BingHuangMaLuanIT的博客 1万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

java 导出csv 格式,java导出csv格式文件的方法

本文实例为大家分享了java导出csv格式文件的具体代码,供大家参考,具体内容如下导出csv格式文件的本质是导出以逗号为分隔的文本数据import java.io.BufferedWriter;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io....

weixin_42165583的博客 4031

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Java导出CSV在Office打开乱码解决

CSV文档是什么 CSV是【Comma-Separated Values】的缩写,代表一种包含数据列表的纯文本文件格式,CSV文件通常用于在不同应用程序之间交换数据。CSV大多使用逗号字符来分隔数据,文件具有相当简单的结构。它是由逗号分隔的数据列表。例如: 问题说明 最近项目中有一个导出CSV的需求,导出的文件使用MicsoftOffice组件中的Excel打开后,内容就会出现乱码,而使用文本软件也可以正常打开且内容都是正常的。我们发现,文档是按照设置的UTF8格式导出的,这就说明并非简单的文件编码的问题

武亚军的博客 2865

常见中文乱码问题以及解决方案(web版)

在平常我们开发的过程中,可能会遇到各种各样的问题,其中中文乱码问题是最普遍最麻烦的,因为寻常的中文乱码会有各种形式,有前端原因,也有后台原因,所以需要具体问题具体分析。下面将从几个常见乱码问题入手,分析其原理,给出解决方案,以便到后续开发中能够尽量避免此问题的发生。目录引言一、问题阐述与分析 1.1 IDEA控制台乱码问题 1.2 页面乱码问题 1.3 前台参数乱码问题 1.4 数据库插入乱码问题 1.5 服务器乱码问题 1.6 ​​​​​​​CSV等文件中文乱码问题 ​​​​​​​1.7 ​​​​​​​U

qq_42374880的博客 4万+

java导出CSV文件

为什么要用CSV? CSV文件 1、CSV文件是一种用逗号分隔数值的文本文件,可以直接用Excel打开,也可以用于导入其他系统。 2、导出的文件为csv格式,请双击用Excel打开后请另存为excel文件。 3、如果打开后乱码,请使用记事本打开CSV文件,“文件”->“另存为”,编码方式选择ANSI,保存完毕后,用EXCEL打开这个文件就不会出现乱码的情况。 Xls文件 Xls文件是标准的Excel文件,可以直接用Excel打开,无乱码现象。数据量较大时,导出速度会很慢 实现代...

qq_40083897的博客 1万+

java csv导出 乱码_java web导出csv文件中文乱码问题解决

今天用java web 导出csv文件时,导出的csv文件内容乱码. 之前因为过滤器一直用utf-8,最后在代码中设置ContentType时试了下gbk居然没乱码了.猜想大概原因是本地打开的格式为gbk吧.相关代码:import java.io.IOException;import java.net.URLEncoder;import java.util.Date;import java.ut...

weixin_33722350的博客 824

JAVA以UTF-8导出CSV文件,用excel打开产生乱码的解决方法

     本次在项目中遇到下载excel文件,用excel打开,是乱码,用notepad或者editplus打开是正常的,代码如下: public static final String DBS_INSTRUCTION_FILE_SEPERATOR = “,”; public class DownloadCSVUtil {    public Response downloadCSV(Stri...

m0_38068812的博客 1330

java导出csv文件乱码_记一次java生成csv文件乱码的解决过程 (GB2312编码)

系统:win7 (格式:中文(简体,中国))工具:Eclipse (默认编码utf-8)服务两个:【restful接口】 和 【服务*** server】。场景:【服务*** server】多次调用【restful接口】,每次【restful接口】会返回一个生成好的csv文件内容。【服务*** server】将每次【restful接口】返回的csv内容保存成一个csv文件。并将生成的多个csv文...

weixin_36046702的博客 2125

python导出csv乱码_导出csv文件时韩文乱码解决方法

从asp.net导出csv这样配置可以防止韩文等乱码,在头部加上0xEF, 0xBB, 0xBF:string fileName = "attachment;filename=" + HttpUtility.UrlEncode("文档");Response.AppendHeader("Content-Disposition", httpHeader);Response.ContentType = ...

weixin_39540725的博客 1159
上一篇: oracle的awr报告导出
下一篇: oracle初始化spfileORCL.ora文件损坏修复
土豆南瓜
博客等级 码龄18年 2粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值