카테고리 없음
[자바 스크립트] JavaScript FileReader의 액세스 요소
행복을전해요
2021. 1. 25. 18:55
의 load
이벤트 를 처리해야 합니다 FileReader
. 핸들러에서 reader.result
또는 액세스하십시오 this.result
.
reader.onload = function() {
var contents = this.result;
};
파일 읽기는 비동기 작업입니다. 따라서 FileReader
각 파일에 대해 별도의 파일 을 만들어야 합니다. 동일한을 재사용하려면 루프를 FileReader
사용할 수 없습니다 for
. 대신 현재 파일이 처리 될 때까지 다음 파일을 읽을 때까지 기다려야합니다.
테스트되지 않았지만 작동해야한다고 생각합니다. :)
var file = document.getElementById('element-id').files;
var fr = new FileReader();
var storeBlobs = [];
fr.onload = function(e) {
storeBlobs.push(e.target.result);
};
for(var i = 0, l = file.length; i < l; i++) {
var content = fr.readAsText(file[i]);
}
File은 onload 메서드를 사용하여 FileReader 개체를 통해 조작 할 수있는 개체 배열을 반환합니다. 사용자가 둘 이상의 파일을로드하면 모든 파일을 처리하고 for 루프를 사용하여 처리합니다. 이 코드는 테스트되지 않았지만 작동해야 함을 강조합니다.
사용자가 하나의 파일 만로드한다고 가정하면 다음과 같이 코드의 첫 줄을 다음과 같이 대체하여 파일 객체를 만들 수 있습니다.
var file = document.getElementById('element-id').files[0];
출처
https://stackoverflow.com/questions/22019881