javacsv生成的csv用excel打开中文乱码

lee2guang      2022-05-08     780

关键词:

SourceForge上找到读写csv文件的开源代码。
但是生成的csv文件,如果用excel打开时,中文全部会乱码。原因是excel在解析csv文件时,默认以utf-8带BOM格式去解析的。
utf-8保存的csv格式文件要让Excel正常打开的话,必须加入在文件最前面加入BOM(Byte order)。
主要修改代码如下:

private void checkInit() throws IOException {
	if (!initialized) {
		if (fileName != null) {
			outputStream = new BufferedWriter(new OutputStreamWriter(
					new FileOutputStream(fileName), charset));

			//为了要让EXCEL显示csv中的中文不乱码,手动的给将要输出的内容加上BOM标识
			if (isUtf8WithBOM) {
				outputStream.write(new String(new byte[]{(byte) 0xEF, (byte) 0xBB, (byte) 0xBF}));
			}
		}

		initialized = true;
	}
}

完整代码放到了gitee上。

csv文件打开乱码

文件恢复后,CSV文件打开都是乱码,怎么解决,急急急参考技术ACSV是逗号分隔值的英文缩写,通常都是纯文本文件。CSV格式是分隔的数据格式,有字段/列分隔的逗号字符和记录/行分隔换行符。通常CSV文件可以用EXCEL正常打开,... 查看详情

excel打开csv出现乱码怎么解决

原因:在简体中文环境下,EXCEL打开的CSV文件默认是ANSI编码,如果CSV文件的编码方式为utf-8、Unicode等编码可能就会出现文件乱码的情况解决:方法1使用记事本打开CSV文件点击菜单:文件-另存为,编码方式选择ANSI保存完毕后,再... 查看详情

java之编码----csv在文本下是正常的,用excel打开是乱码的问题

JAVA之编码---->CSV在文本下是正常的,用EXCEL打开是乱码的问题 在JAVA下输出文件流,保存成CSV(用UTF-8)文件,怎么处理用EXCEL下是乱码,但是在记事本等其他软件都是正常的,同时显示也是UTF-8的编码,经过测试发现如下结... 查看详情

java生成csv格式文件后,用excel打开,单元格显示问题

...技术B既然excel设置不行了,就只能设置处理的java了在你生成的csv的数据前面都加上'例如000001231变成'000001231本回答被提问者采纳 参考技术C这是excel自动格式话的问题,与JAVA无关,你要是非要在Excel里看,可以用到http://sourc... 查看详情

excel打开csv出现乱码怎么解决

原因:在简体中文环境下,EXCEL打开的CSV文件默认是ANSI编码,如果CSV文件的编码方式为utf-8、Unicode等编码可能就会出现文件乱码的情况解决:方法1使用记事本打开CSV文件点击菜单:文件-另存为,编码方式选择ANSI保存完毕后,再... 查看详情

打开excel乱码怎么办excel打开出现乱码的解决办法

...支持HTML5视频zymedia(\'video\')参考技术A第一,CSV文件用excel打开是乱码  从网页导出的CSV文件,用Excel打开,中文会是乱码。CSV文件乱码问题主要是文件编码引起的。因此要解决Excel打开乱码的问题,可以从改文件开始:  首先... 查看详情

关于csv文件excel打开乱码问题的解决方案

近日写java程序中,将数据输出到csv文件中,发现Excel打开之后,中文均为乱码于是寻找解决方案,发现最简单的方式还是如此了 1. 将输出的csv文件用记事本打开 2. 另存为将文件编码格式改为UTF-8 3.再用Excel打... 查看详情

csv文件,excel保存后再打开乱码。

...S、UTF-8、GB2312都试过了,导出来正常,修改保存后再重新打开就是乱码。用宏导出到另一个excel文件中也同样是乱码。我的计算机语言是日语,东西都是日语的。excel是2007版出现这种情况的原因:1.文件已经被损坏。2.因启动故障... 查看详情

excel文件出现乱码的原因及解决方法

参考技术Aexcel文件出现乱码的原因及解决方法  excel打开是乱码怎么办?该如何解决呢?打开excel遇到乱码也是很常见的现象,不要立刻把excel文档删除,以下就是我给大家分享的excel打开是乱码的解决方法。  excel文件出现... 查看详情

excel打开csv乱码问题

如果csv是UTF8编码的,那么用EXCEL2007打开会乱码解决方法:1,用记事本打开csv,另存为ANSI编码,再用EXCEL2007打开就不会乱码但是在UNITY_ngui中就无法读取了,UNITY_NGUI和界面必须要求CSV是UTF82,用支持UTF9的CSV软件打开,目前经过测试好用的有&n... 查看详情

用记事本打开csv文件乱码怎么办

...v”后缀名直接修改为“.txt”,转变为文本格式文档;2、打开一个新的excel工作表,选择“打开”,在下方把文件类型修改为“文本文件”,然后选择刚才转变为.txt格式的文件;3、打开文件后悔跳出“文本导入向导”对话框,... 查看详情

excel打开csv出现乱码怎么解决(转载百度经验)

...号字符和记录/行分隔换行符。通常CSV文件可以用EXCEL正常打开,但是许多人都有这样的经历,使用EXCEL打开后,原本应该出现中文地方都变成乱码了。这种情况怎么解决呢 查看详情

csv文件打开英文乱码

下载的csv数据报告,用excel打开全是一行行的英文第一格写的:!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd我卸载了excel07装了03版本打开还是这样,别人电脑打开就是正常的csv文件,是... 查看详情

excel文件打开乱码,xls格式的,如何修复?

就是打开后单元格上的都是乱码,并不是打不开~您的浏览器不支持HTML5视频zymedia(\'video\')参考技术A1、首先在电脑桌面上新建一个excel表格,然后打开新建的表格。2、打开表格后,在excel表的菜单栏中点击【文件】,然后在文件... 查看详情

excel打开csv出现乱码怎么解决

excel打开csv出现乱码的解决办法:用Excel打开UTF-8编码的CSV文件会导致汉字部分出现乱码。原因:Excel以ANSI格式打开,不会做编码识别。1)打开Excel 2)执行“数据”->“自文本”3)选择CSV文件,出现文本导入向导4)选择“分隔符号... 查看详情

pycharm中打开csv文件乱码问题

...种PC表格及数据库中。csv文件,一行即为数据表的一行。生成数据表字段用半角逗号隔开。csv文件用记事本和excel都能打开,用记事本打开显示逗号,用excel打开,没有逗号,逗号是用来分列的,还可用Editplus打开。 将本地csv文... 查看详情

csv用excel打开出现乱码(代码片段)

CSV用Excel打开出现乱码今天出现一个问题使用wps打开不会出现乱码。但使用excel打开的时候会出现乱码。其实在我们把文件流转成文件的时候需要在bolb对象前加上unicode标识,只需要下载的时候在数据流前面新增一个标识就行了。... 查看详情

csv文件excel打开是乱码怎么办

参考技术A乱码是因为电脑不认识csv文件所用的字符集以及excel不能识别csv文件用的分隔符。  可以用excel菜单中的“数据”->“导入外部数据”->"导入数据",然后选中csv文件,  在步骤1中选择一个合适的文件原... 查看详情