1

我必须制作 Cryptogram 才能使用 node.js 请帮助..!!! (你可以制作密码密钥吗??)我试过了。. 谢谢你的帮助 :)

function encrypt(data,j) {
    for(var i = 0, length = data.length; i<length; i++) {
         j = data.charCodeAt(i);
        //console.log(j);
        String.fromCharCode(j);
        process.stdout.write(j);
    }
    return data;
}

function decrypt(data) {
    return data;
}

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

process.stdout.write('Input (암호화할 문장을 입력) : ' );

process.stdin.on('data',function(data,j) {
    //data = data.trim();
    process.stdout.write('평문(your input) :' + data);
    process.stdout.write('암호문(encrypt) :');
    encrypt(j);
    process.stdout.write('복호문(decrypt) :');

    process.exit();
    });
4

1 回答 1

1

process.stdin是一个可读流。回调接受单个参数(参见文档示例)。为了安全起见,我encrypt()只会在stdin结束事件时打电话。用 的串联调用它data

process.stdin.on('data',function(data) {
    process.stdout.write('평문(your input) :' + data);
    process.stdout.write('암호문(encrypt) :');
    encrypt(data);
    process.stdout.write('복호문(decrypt) :');
    process.exit();
});

如果是我,我会从标准输入收集所有数据作为字符串(可以是字符串或缓冲区),并在流的end事件上处理它:

var input = '';
process.stdin.on('data',function(data) {
    process.stdout.write('평문(your input) :' + data);
    input+=data;
});

process.stdin.on('end', function(){
    process.stdout.write('암호문(encrypt) :');
    encrypt(input);
    process.stdout.write('복호문(decrypt) :');
    process.exit();
});
于 2013-05-19T04:03:25.243 回答