返回目录:excel表格制作
直接用 Excel 打开 UTF-8 编码的 CSV 文件会导来致汉字部分出现乱码。
原因是 Excel 以 ANSI 格式打开源,不会做编码识别。
打开 UTF-8 编码的 CSV 文件的方法:
1) 打开 Excel
2) 执行“数据”->“自文本”
3) 选择 CSV 文件,出现文本导入zhidao向导
4) 选择“分隔符号”,下一步
5) 勾选“逗号”,去掉“ Tab 键”,下一步,完成
6)在“导入数据”对话框里,直接点确定
csv文件可以zhidao用excel直接打开,
也可以用记事本打开。 乱码是因为csv文件的编码格式不符合要求,
你可以试试将内它转换为ANSI格式后再打开。 转换方法:用记事本打开后直接另存为,在下面编码格容式处选择ANSI或UTF-8后,点击确定后就可以了。
在你要输出的内容前先输出"\xEF\xBB\xBF",例如:你要输出的内容保zd存在$content里专
$content = "\xEF\xBB\xBF".$content; //添加BOM
确保输出$content前没有任何其他东西输出。
何为BOM,它是Windows用来标记文本文件的编码方式的,你可以在属网上查查相关BOM资料。
设置方法:
设置office语言环境(以office 2003为例):
开始菜单-Microsoft office- Microsoft office工具- Microsoft office 2003语言设置,将Microsoft office应用程序默认方式的语言设为"中文(简体)"。
使用记事本打开CSV文件,文件-另存为,编码方式选择想要替换成的编码(如gbk)。
保存完毕后,用EXCEL打开这个文件就会正常显示。
【编码方式讲解】
(1)ANSI编码
不同的国家和地区制定了不同的标准,由此产生了 GB2312, BIG5, JIS 等各自的编码标准。这些使用 2 个字节来代表一个字符的各种汉字延伸编码方式,称为 ANSI 编码。在简体中文系统下,ANSI 编码代表 GB2312 编码,在日文操作系统下,ANSI 编码代表 JIS 编码。 不同 ANSI 编码之间互不兼容,当信息在国际间交流时,无法将属于两种语言的文字,存储在同一段 ANSI 编码的文本中。 当然对于ANSI编码而言,0x00~0x7F之间的字符,依旧是1个字节代表1个字符。这一点是ASNI编码与Unicode编码之间最大也最明显的区别。例如上面演示的文件中英文字母和数字并没有出现乱码的情7a64e78988e69d83335况。
(2)Unicode编码
Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。随着计算机工作能力的增强,Unicode也在面世以来的十多年里得到普及。
Unicode是国际组织制定的可以容纳世界上所有文字和符号的字符编码方案。Unicode用数字0-0x10FFFF来映射这些字符,最多可以容纳1114112个字符,或者说有1114112个码位。码位就是可以分配给字符的数字。UTF-8、UTF-16、UTF-32都是将数字转换到程序数据的编码方案。
(3)UTF-8编码
UTF-8是UNICODE的一种变长字符编码又称万国码,由Ken Thompson于1992年创建。现在已经标准化为RFC 3629。UTF-8用1到6个字节编码UNICODE字符。用在网页上可以同一页面显示中文简体繁体及其它语言(如日文,韩文)。