在Node.js中如何将数据以stdin的方式传递进由spawn产生的子进程?

比如说:

var test = require('child_process').spawn('./a.out');

完整代码:

var spawn = require('child_process').spawn('./a.out',{stdio:'pipe'})

spawn.stdin.write('8 9');

spawn.stdout.on('data', function(data){
    console.log('stdout:\n' + data + '\n');
});

spawn.stderr.on('data', function(data){
    console.log('stderr:\n' + data + '\n');
});

a.out的代码:

#include <iostream>
int main(){
    int a=2,b=3;
    std::cin>>a>>b;
    std::cout<<a*b<<std::endl;
    return 0;
}

然后这个a.out接收两个输入(不是两个arg),如何不通过手动输入的方式把这个数据传递进去??

阅读 4.2k
评论 更新于 2014-03-19
    1 个回答
    weakish
    • 23.9k
    test.stdin.write(data)
    

    data里面是你要传给a.out的数据

    评论 赞赏 2014-03-18
      撰写回答

      登录后参与交流、获取后续更新提醒