1
我從NodeJS中的child_process.exec()
中獲得一個緩衝區(並且我可以將其設置爲字符串)。我需要迭代輸出字符串的行。我將如何做到這一點?爲了避免在內存中分裂了整個事情在NodeJS中迭代字符串行
我從NodeJS中的child_process.exec()
中獲得一個緩衝區(並且我可以將其設置爲字符串)。我需要迭代輸出字符串的行。我將如何做到這一點?爲了避免在內存中分裂了整個事情在NodeJS中迭代字符串行
一種方法是對其進行處理一行在同一時間
var i = 0;
while (i < output.length)
{
var j = output.indexOf("\\n", i);
if (j == -1) j = output.length;
.... process output.substr(i, j-i) ....
i = j+1;
}
被遍歷'output.split(「\\ N」)'不夠或你需要一個非阻塞處理? – 6502
我意識到我可以將它分開,但我希望更高效的方式來做到這一點,因爲輸出可以有幾兆字節的大小。 – Tower
@rFactor以及你已經擁有RAM中的整個緩衝區。使其更高性能的唯一方法是在流上使用線閱讀器 – Raynos