簡體   English   中英

如何在node.js中處理/ cld輸出的stdout流的字符編碼?

[英]How do I handle character encoding for stdout stream of (cli) output in/from node.js?

我很困惑如何安全地存儲和讀取Node.js中的process.stdout輸出:

console.log() (等)的CLI輸出是否以特定的字符編碼完成? 或者是未指定形式的原始二進制文件? 可以有二進制數據嗎? (我不知道)

Node.js非常面向utf8,但是JS是UCS2,我不知道流對它做了什么。

並且相關:如果我將utf8中的Buffer轉換為String(默認值),將string-diff應用於流是否安全? 注意我的diff渲染器將使用jsenc進行顯示,因此它顯示非printables。

用例是我希望能夠安全地斷言/區分CLI快照以驗證我為各種工具構建的自定義報告器(注意這包括發現不期望的垃圾/ lint輸出,所以我想點擊真正的最終輸出來自stdio流)。

(歡迎任何相關建議)

stdout.setEncoding('utf8');

然后你可以安全地: stdout.on('data', function(data) { console.log(data); });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM