php - 如何通过 php 读取 Windows unicode 文件并将它们存储在 utf-8 数据库中?

标签 php mysql windows unicode registry

当您导出注册表项时,Windows 注册表编辑器会创建 Windows Unicode (UTF-16-le) 文件。我正在尝试找出使用 PHP 将这些文件导入 mysql 数据库的最佳方法,以便以后可以再次将它们下载为 unicode 文件?

当我将它们导入数据库时​​,我使用 file_get_contents() 并将它们存储到 utf-8 列中。当我导出它们时,我首先使用 mb_convert_encoding($row['reg'], 'UTF-16') 并发出 header 以下载文件。但是,当我在 Windows 中打开它们时,内容只是乱码。

关于处理这个问题的正确方法有什么想法吗?

最佳答案

我想我会分享我能够找出的解决方案。诀窍是使用 UTF-16LE 作为原始字符集。

mb_convert_encoding(file_get_contents($file), 'UTF-8', 'UTF-16LE');

关于php - 如何通过 php 读取 Windows unicode 文件并将它们存储在 utf-8 数据库中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8169748/

相关文章:

php - 如何使用 mPDF 将 php 文件的输出转换为变量

php - 1an1 mysql ip地址位置

php - 如何修复 'No Suitable Nodes'错误?

node.js - 如何使用 Windows 10 在 Linux 机器上处理远程文件?

php - php 中带有超时参数的 exec() ?

php - MYSQL 查询从关系表中检索数据并过滤掉重复项

Php 检查是否声明了静态类

MySQL 长查询进度监控

windows - 批处理 - 如果正在运行则终止程序,如果没有则启动它

java - Windows 和 Mercurial 更改类名的大小写