HTML + Javascript для чтения локальной файловой системы - PullRequest
0 голосов
/ 11 июня 2018

Я по рождению Java-разработчик с очень ограниченными навыками программирования на стороне клиента, поэтому мне нужна помощь здесь.

Я в основном ищу способ создания одностраничного приложения HTML / JavaScript для чтения моей локальной файловой системы,Я хочу перечислить каталоги и файлы в определенном каталоге на моей HTML-странице.Каковы способы достижения этого.

Обратите внимание, что я хочу избежать серверного кодирования, веб-приложений и прочего.Просто нужно простой HTML и / или Javascript или любой фреймворк Javascript, чтобы сделать это для меня.И мне нужно, чтобы он работал в основном над хромом.

Пожалуйста, предложите.

1 Ответ

0 голосов
/ 11 июня 2018

Хотя читать файлы на стороне клиента не очень хорошо, может возникнуть много проблем с безопасностью и доступом.Тем не менее, если вы хотите, вы можете прочитать файл на стороне клиента с помощью программы чтения файлов, проверьте следующий пример:

<input type="file" id="fileinput" multiple />
<script type="text/javascript">
  function readMultipleFiles(evt) {
    //Retrieve all the files from the FileList object
    var files = evt.target.files; 

    if (files) {
        for (var i=0, f; f=files[i]; i++) {
              var r = new FileReader();
            r.onload = (function(f) {
                return function(e) {
                    var contents = e.target.result;
            console.log(contents);
                    alert( "Got the file.n" 
                          +"name: " + f.name + "n"
                          +"type: " + f.type + "n"
                          +"size: " + f.size + " bytesn"
                          + "starts with: " + contents.substr(1, contents.indexOf("n"))
                    ); 
                };
            })(f);

            r.readAsText(f);
        }   
    } else {
          alert("Failed to load files"); 
    }
  }

  document.getElementById('fileinput').addEventListener('change', readMultipleFiles, false);
</script>
...