2012-07-04 5 views
0

디렉터리를 읽고 해당 파일의 이름으로 목록을 채우고 싶습니다.javascript를 사용하여 디렉토리에서 파일을 읽을 수 있습니까?

자바 스크립트를 사용하여이 작업을 수행 할 수 있습니까?

+2

에 따라 다릅니다. 브라우저 - 자바 스크립트 : 실제 파일 시스템 : 아니오 가상 파일 시스템 : 예. –

+0

[가상 파일 시스템] (https://developer.mozilla.org/en/DOM/File_API/File_System_API/FileSystem)은 이해할 수 있듯이 localStorage를 사용하는 또 다른 방법입니다. 'ls something '을하기 위해 그것을 사용하는 것은 불가능합니다.) – raina77ow

+0

나는 이것이 당신이 찾고있는 것이 아니라는 것을 알고있다. 그러나 서버 측 스크립트를 만들어 디렉토리를 읽은 다음 그 결과를 JSON으로 보낼 수있다. – Abdulaziz

답변

4

아니요, 보안상의 이유로.

ActiveX 또는 Flash를 호출하고 사용자가이 플러그인의 파일 시스템 액세스를 허용하는 데 동의 할 수는 있지만 그렇게하지 마십시오.

2

아니요, 불가능합니다. 누군가 디렉토리에있는 의 내용을 읽으시겠습니까?

UPDATE : here을 같이

HTML

<input type="file" id="file_input" webkitdirectory="" directory="" /> 
<div id="list_of_files"></div> 
... 

JS

var $list = $('#list_of_files'); 
$('#file_input').change(function(event) { 
    var listOfFiles = event.target.files; 
    for (var i = 0, l = listOfFiles.length; i < l; ++i) { 
    $list.append($('<p>'+ listOfFiles[i].name +'</p>')); 
    } 
}); 

... : 나는 당신이 webkitdirectory 속성을 사용하여 얻을 수있는 가장 가까운 가정 . 하지만 그것은 크롬에서만 작동합니다 (그리고 mozdirectory 속성의 권장 사용은 도움이되지 못했습니다).

2

FileReader 개체를 사용해 볼 수도 있지만 브라우저에서 제대로 지원하지 못합니다.

1

구글 크롬에서 당신은 디렉토리와 그 하위 디렉토리에 포함 된 파일을 나열하려면이 옵션을 사용하여 다음 디렉토리를 선택하기 위해 클라이언트 메시지를 표시하고 있습니다

<input type="file" webkitdirectory onchange="listContents(this.files)"> 

listContents이 구현 될 것입니다.

0

보안 연구 등을 수행하고 있는지 여부는 알 수 없습니다. "실제로는 안된다"는 말 이외에도 실제 질문에 대한 대답은 실제로 파일을 제대로 활용하지 않고 읽을 수 있습니다. - 작성된 JS 코드, 그래서 당신이 코드를 방어해야합니다.

다음이있다 : http://www.html5rocks.com/en/tutorials/file/dndfiles/

0

예는 당신이 가지고있는 브라우저에 따라.

일반적인 사례는 아니지만 Chrome과 같은 특정 브라우저 (webkitRequestFileSystem에서 지원하는 requestFileSystem 사용) 또는 파일 시스템 객체를 사용하는 Internet Explorer에서 사용할 수 있습니다.

관련 문제