【发布时间】:2020-01-27 10:12:58
【问题描述】:
我正在编写 PERL 脚本,该脚本从 .XLSX Excel 文件中读取数据并将数据插入 Oracle 数据库。数据库有 Windows-1252 编码,excel 文件有 UTF-8 编码(我知道这是 xlsx 文件的标准),特殊字符如 ö,ü,ű,ő 显示为??。转换该 .xlsx 文件编码的正确方法是什么?在将读取的字符串插入数据库之前,我尝试将读取的字符串转换为 windows-1252,并且尝试将整个 Excel 文件转换为 win-1252,但它们都不起作用。
感谢大家阅读并尝试帮助解决我的问题。 问候, 克里斯
【问题讨论】:
-
显示您尝试过的内容?特别是在将读取的字符串插入数据库之前将其转换为windows-1252方法。
-
您可以使用
Encode::to_from($str, 'UTF-8', 'cp1252'),将UTF-8 编码的$str就地转换为Windows-1252,参见the docs -
您使用哪个 perl 模块来访问 Oracle-DB?
标签: perl encoding utf-8 xlsx windows-1252