NodeJS子进程标准输出是所有数字

时间:2015-04-28 08:44:59

标签: node.js stdout child-process

我正在编写一些node.js脚本来启动子进程。代码段如下。

var spawn = require('child_process').spawn; 
var child = spawn ('node', ['script.js'])

child.stdout.on('data', 
    function (data) {
        logger.verbose('tail output: ' + JSON.stringify(data));
    }
);

child.stderr.on('data',
    function (data) {
        logger.error('err data: ' + data);
    }
);

脚本运行良好,但子进程的stdout和stderr只打印数字输出:

示例输出:

   108,34,44,34,105,110,99,114,101,97,109,101,110,116,97,108,95,112,111,108,108,105

如何将这些数值转换为可读字符串?

感谢。

1 个答案:

答案 0 :(得分:8)

data是一个数组缓冲区。调用它的toString方法JSON.stringify(data.toString('utf8'))