這是一個有點老問題,但我想很多人試圖找到一些解決方案。這是一個。
我使用NPAPI FILE IO擴展名創建了這種解決方案。已經編譯過擴展DLL的/ SO,所以如果你不想重新編譯,例如添加新的方法。您可以使用該庫並開發擴展到Firefox,Chrome和可能與AtiveX組件一起的IE。這是我爲Chrome做的。
1)下載svn回購。
2)對於較新的Chrome版本,請編輯manifest.json
-文件位於test\extension
-文件夾下。以下是我的manifest.json文件
{
"manifest_version": 2,
"name": "npapi-file-io-test",
"description": "NPAPI demo",
"version": "1.0",
"description": "Test extension for npapi-file-io project",
"background": {
"page": "background.html"
},
"plugins": [{"path": "npapi-file-io-32.dll", "public": true},{"path": "npapi-file-io-32.so", "public": true},{"path": "npapi-file-io-64.so", "public": true}]
}
3)將擴展安裝到chrome中。
4)在頁面中使用擴展名。以下是列出/ tmp文件夾中的文件的示例:
<!DOCTYPE XHTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>NPAPI File IO test</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script>
$(document).ready(function() {
var fs = $('#fs')[0];
var dir = "/tmp";
var files = fs.listFiles(dir);
for (var f in files) {
if (files[f].type == "file") {
$('#filelist').append('<a href="file:///'+dir+"/"+files[f].name+'">'+files[f].name+'</a><br/>');
}
}
});
</script>
</head>
<body>
<embed type="application/x-npapi-file-io" id="fs">
<div id="filelist"></div>
</body>
</html>
在此處瞭解更多信息http:// stackoverflow。com/questions/2924935/list-files-in-a-directory-using-only-javascript –
看看Active-X。但它只適用於IE。 HTML5似乎是另一種選擇:http://stackoverflow.com/questions/10234515/html5-file-system-how-to-read-directories-using-directory-reader – Johan