node.js - 从nodejs中的stdin读取强制将\r\n转换为\n

标签 node.js stream newline stdin

在我试图制作的脚本中,nodejs 从标准输入读取,但强制将所有\r\n 转换为\n。这会导致我的另一个脚本产生不正确的结果。

有什么办法可以防止这种情况发生吗?

这是我用来从标准输入读取的代码。

process.stdin.resume();

process.stdin.setEncoding('ascii');

process.stdin.on('data', function(chunk){
    data += chunk;
})

process.stdin.on('end', function(){
    console.log(JSON.stringify(data));
});

最佳答案

你可以使用这个:

process.stdin.on('data', function(chunk){
      data += chunk.replace(/\r\n/g,"\n");
});

关于node.js - 从nodejs中的stdin读取强制将\r\n转换为\n,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7780140/

相关文章:

javascript - 在使用nodejs中的请求模块通过post请求发送数据时出现错误

node.js - Node.js 中的授权

stream - 如何从 pipelinedb 中的连续 View 流式传输输出?

c# - 在流中保存二进制数据

java - 共享网 : How to send a file over FTP using ASCII without changing LF to CRLF

javascript - 如何在 MongoDB 中使用集合?

node.js - Winston-loggly - 如何发送级别 : 'fatal' message to loggly?

c++ - friend 没有得到私有(private)成员(member)

lisp - 如何在 lisp 中打印新行?

C++ - 如何删除打印到控制台的换行符