7

How to get the contents of the directory from local PC in javascript/jQuery? For example from C:\Images

4
  • you could use nodejs for this... with vanilla javascript/jquery is not possible Commented Nov 29, 2012 at 11:12
  • possible duplicate of Local file access with javascript Commented Nov 29, 2012 at 11:13
  • Do you mean in the browser? Thankfully, that's not possible without plugins, as it would be a privacy breach. Commented Nov 29, 2012 at 11:14
  • It’s not possible using client-side scripting. Commented Nov 29, 2012 at 11:14

8 Answers 8

26

This only works in google chrome:

<input type="file" webkitdirectory>

This will prompt the user to select a directory and you can then access the files property of the input to see the contained files.

It is then possible to use the File System API to construct a virtual, sandboxed file system of the user selected files and have programmatic access to this virtual filesystem as if it was a real filesystem accessed by desktop app.

There is no way otherwise because that would be a big security issue

Working demo in google chrome: http://jsfiddle.net/JwgqC/

Sign up to request clarification or add additional context in comments.

3 Comments

Yeah, pretty useful for example a media player app to select music folder and then construct a playlist.
'virtual, sandboxes file system' ... I'm guessing there will be no refresh then?
Firefox now partially supports this: developer.mozilla.org/en-US/docs/Web/API/…
2

here you can read local files by html5 and javascript using the file APIS

http://www.html5rocks.com/en/tutorials/file/dndfiles/

Comments

1

Javascript/Jquery does not have access to the local file system for security reasons. This is not possible.So try some server side base code.

Comments

1

Now, some years later, accessing to local files works fine in Chrome AND Firefox (52.8, but update Firefox is easy). It works also with IE 11.

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>files</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
</head>
<body>
<script>
// Check for the various File API support.
if (window.File && window.FileReader && window.FileList && window.Blob) {
  // Great success! All the File APIs are supported.
} else {
  alert('The File APIs are not fully supported in this browser.');
}
</script>
</body>
</html>

Comments

0

You could write a script using a technology like php, ruby, java which will list all files and then send this information via ajax to Your browser.

But You can't do this only via javascript because of security restrictions.

Comments

0

I don't think this is possible because accessing the local file system is a terrible security risk.

Comments

0

Javascript can't access the users drive. That would be a big security issue, wouldn't it? :D

Instead, you need to use an other technology like flash or java-applets.

1 Comment

Flash cannot without prompts either, but if the java applet is signed (costs $499 for 1 year) and the user accepts it, the java applet can access local filesystem.
0

it is not possible to have javascript-access to the local file-system from the browser, and this is good so!

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.