development/script

[javascript] ActiveXObject를 이용한 텍스트 파일 읽기/쓰기

big-blog 2018. 3. 5. 22:25
반응형

꽤 예전에 잘 썼었던 스크립트인데 블로그 정리하면서 발견되어 공유합니다.

익스플로러 환경에서는 잘 돌았던 것으로 기억하네요.

<script type="text/javascript">
    var fso=new ActiveXObject("Scripting.FileSystemObject");
    var filename="C:\\text.txt";
    var delim="\t";
    function savefile() {
        if (!fso.FileExists(filename)) {
            fso.CreateTextFile(filename,true);
        }
        var f=fso.OpenTextFile(filename,2,true);
        f.Write(myarea.innerText);
        f.Close();
    }
    function loadfile() {
        if (!fso.FileExists(filename)) {
            fso.CreateTextFile(filename,true);
        }
        var f=fso.OpenTextFile(filename,1);
        var arr=new Array();
        var i=0;
        while(!f.AtEndOfStream) {
            arr[i++]=f.ReadLine().split(delim);
        }
        myarea.innerText="";
        for (var i=0; i<arr.length; i++) {
            for (var j=0; j<arr[i].length; j++) {
                myarea.insertAdjacentText("beforeEnd",arr[i][j]+delim);
            }
            myarea.insertAdjacentText("beforeEnd","\n");
        }
        f.Close();
    }
    function window.onload() {
        loadfile(filename);
    }
<textarea id="myarea" cols="60" rows="10" wrap="off"></textarea><br />
<input type="button" value="load" onclick="loadfile()">
<input type="button" value="save" onclick="savefile()">


반응형