covepark
10
2020-11-22 21:37:43 작성 2020-11-22 21:48:54 수정됨
1
127

javascript 실시간 변수 받아오기 질문입니다.


안녕하세요, 코딩을하다가 진짜 너무 모르겠어서 질문드립니다.



var lastLineFeed,

    lineArray;



var fs = require('fs'),

    bite_size = 60,

    readbytes = 0,

    file;



function readsome() {
    var stats = fs.fstatSync(file);

    if(stats.size<readbytes+1) {
        console.log('Hehe I am much faster than your writer..! I will sleep for a while, I deserve it!');

        setTimeout(readsome, 3000);

    }

    else {
        fs.read(file, new Buffer(bite_size), 0, bite_size, readbytes, processsome);

    }

}



function processsome(err, bytecount, buff) {
    lastLineFeed = buff.toString('utf-8', 0, bytecount).lastIndexOf('\n');



    if(lastLineFeed > -1){


        lineArray = buff.toString('utf-8', 0, bytecount).slice(0,lastLineFeed).split('\n');

        readbytes += lastLineFeed+1;

    } else {


        readbytes+=bytecount;

    }

    process.nextTick(readsome);

}

fs.open('ran_tx.txt', 'r', function(err, fd) { file = fd; readsome(); });



위는 실시간으로 ran_tx.txt가 업데이트 될때마다 한 line씩 읽는 함수입니다.

여기서 제가 lineArray를 어떻게 function밖으로 빼서 변수를 읽을 수 있을지 모르겠습니다.

구체적으로 코드의 마지막에 console.log(lineArray);를 했을 때

값을 읽어오고 싶습니다.

최종적으로는 값이 바뀔때 마다 읽고 싶습니다.

기초가 없으니까 너무 힘드네요ㅠㅠ

도움 주시는분은 사례하겠습니다 정말로ㅠㅠㅠㅠㅠㅠㅠ

0
  • 답변 1

  • yykk123
    99
    2020-11-23 01:15:36

    뭘 원하시는지 모르겠지만..

    node.js 공식 문서에서 fs.read와 fs.fstatSync를 확인해보시길바랍니다..



  • 로그인을 하시면 답변 을 등록할 수 있습니다.