3

我有一个 mysql 数据库的 utf8 信息。我想使用 console.log 将其输出到控制台。

但它显示“框”字符而不是 utf8 数据。

我在哪里丢失数据?我应该怎么做才能解决这个问题?从数据库读取数据时有问题吗?(使用 felixge-node-mysql-v0.9.5-1)或在输出到控制台期间?(使用console.log)或者它的控制台本身(windows命令窗口设置为字体“Lucida Console”)

谢谢。

更新:我现在认为这是 Windows 命令窗口字体的问题。当我使用 powershell 窗口运行相同的节点脚本时,我确实看到了不同的字符,这些字符看起来不像我期望的那样。不管是谁,当我尝试将其粘贴到此浏览器窗口时,它们会突然更改为正确的字体和字符。

4

1 回答 1

1

虽然我仍然喜欢更好的解决方案,但我现在发现的是以下适合我的解决方案:

我将使用 Windows PowerShell ISE。
在里面我运行了以下命令:
chcp 65001

从 WPSISE 的最低窗格运行 node.exe my.js 会在中间窗格中产生我想要的确切打印输出。

另一点要提的是,如果我尝试打开一个 cmd.exe 窗口并在其中运行chcp 65001,然后执行我的脚本,我会得到 node.js:284 throw new Error('process.stdout cannot be closed');

于 2012-06-04T10:26:08.540 回答