From 7b798433a53c475015a5cc86209aa7bf65cb587b Mon Sep 17 00:00:00 2001 From: unknown <21157814392qq.com> Date: Wed, 22 Feb 2023 17:35:39 +0800 Subject: [PATCH] 'zuoye' --- .../2\346\234\21021\346\227\245/demo.js" | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 "\351\203\221\351\271\217\347\250\213/2\346\234\21021\346\227\245/demo.js" diff --git "a/\351\203\221\351\271\217\347\250\213/2\346\234\21021\346\227\245/demo.js" "b/\351\203\221\351\271\217\347\250\213/2\346\234\21021\346\227\245/demo.js" new file mode 100644 index 00000000..113c1d5b --- /dev/null +++ "b/\351\203\221\351\271\217\347\250\213/2\346\234\21021\346\227\245/demo.js" @@ -0,0 +1,20 @@ +let fs = require("fs"); +let str = "bsvqhjsgvcbasdhb169823746198726bkjasbc你jhbsvqhjsgvcbasdhb169823746198726bkjasbcjh45dkjhciqu789jftxhrf"; +let fd = fs.openSync("./bigFile.txt", "a"); +for (let i = 0; i < 100000; i++) { + fs.writeSync(fd, String(str.substring(parseInt(Math.random() * 100), parseInt(Math.random() * 100)))); +} +fs.closeSync(fd); +let stream = fs.createReadStream("./bigFile.txt"), arr = Array(); +stream.on("data", (chunk) => { + for (let i = 0; i < chunk.toString().length; i++) { + var s = chunk.toString()[i] + "="; + arr[s] > 0 ? arr[s]++ : arr[s] = 1; + } +}) +stream.on("end", () => { + console.log(((max = { name: null, num: 0 }) => { + for (const key in arr) {if (arr[key] > max.num) { max.name = key.slice(0, 1); max.num = arr[key] }} + return max; + })()) +}) \ No newline at end of file -- Gitee