How you take input in Node.js / Javascript from file or stdin.

Revision en2, by RohitKaushal, 2019-09-06 23:08:34

How to get Input from stdin / input.txt in Node.js / JavaScript

Write this header code in the beginning of your js code

'use strict';

process.stdin.resume();
process.stdin.setEncoding('utf-8');

let inputString = '';
let currentLine = 0;

process.stdin.on('data', inputStdin => {
    inputString += inputStdin;
});

process.stdin.on('end', _ => {
    inputString = inputString.trim().split('\n').map(string => {
        return string.trim();
    });
    
    main();    
});

function readLine() {
    return inputString[currentLine++];
}

// thats all what you have to write to get input from stdin, using readLine.


// Main code runs in main();


function main() {
    const parameterVariable = readLine();
    const line2 = readLine();
    
    greeting(parameterVariable);
    greeting(line2);
}

function greeting(parameterVariable) {
    console.log('Hello, World!');
    console.log(parameterVariable);
 // Write a line of code that prints parameterVariable to stdout using console.log:  
}

Testing Locally

paste your input in a text file input.txt

then $ cat input.txt | node main.js to view on console. $ cat input.txt | node main.js > output.txt to store the output in file.

you can also make a sublime-build file for this and then just press Ctrl+B
Tags nodejs, javascript, input, stdin, codeforce javascript

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en8 English RohitKaushal 2020-01-26 11:58:34 742 Tiny change: 'ion.**\n\n\n\n\n###T' -> 'ion.**\n\n<hr>\n\n\n###T'
en7 English RohitKaushal 2020-01-03 09:18:55 3
en6 English RohitKaushal 2019-10-17 12:19:26 7 Tiny change: 'cb52.png) proof. :)\n ' -> 'cb52.png) :)\n '
en5 English RohitKaushal 2019-09-14 19:49:10 107
en4 English RohitKaushal 2019-09-14 19:37:07 159
en3 English RohitKaushal 2019-09-08 16:55:46 882 Tiny change: 'orces\n\n```readline()``` Reads on' -> 'orces\n\n`readline()` Reads on'
en2 English RohitKaushal 2019-09-06 23:08:34 0 (published)
en1 English RohitKaushal 2019-09-06 23:07:41 1459 Initial revision (saved to drafts)