我必须在 angularjs 中用文件名填充一个数组
I have to fill an array with filenames, in angularjs
我必须用文件名填充数组。它是一个本地文件夹,里面有很多文件,我需要文件名 "go inside" 数组。
文件名[0] = australia.jpg
文件名[1] = italy.jpg
等等。
有什么想法吗?
谢谢。
我试过了,但没用:
var getFilesNames = function(){
var folderPath = Folder ("C:\Users\Giulio\Desktop");
var toteTempFiles = toteTempPath.getFiles();
var namesArr = [];
for(var i=0; i<toteTempFiles.length; i++){
var thisFile = toteTempFiles[i];
myNames.push(thisFile.name);
}
}
据我所知,不可能窥探用户的文件系统,这将是一个很大的安全问题。
但是,对于新文件 API,用户可以授予您访问某些文件的权限,从而允许您获取有关它们的信息并上传它们。但是,这确实涉及用户必须执行操作。
所以稍微改变你的要求你可以这样做:
<input type="file" id="input" multiple />
和JS
var inputElement = document.getElementById("input");
inputElement.addEventListener("change", handleFiles, false);
function handleFiles() {
var fileList = [];
for(var i = 0; i < this.files.length; i++) {
fileList.push(this.files[i].name);
}
console.log(fileList);
}
本质上,您有一个用户与之交互的输入。当它的值发生变化时,selected 了一些文件,onchange
处理程序将触发,为您提供有关文件 selected 的信息。
重要的是要注意 this.files
不是一个数组,而是一个类似对象的数组,就像 arguments
变量一样。所以你不能 map
或对它做 forEach
。
所以在您的使用中,它会稍微改变为用户必须 select 您需要的文件夹中的所有文件。然后您可以继续获取所需的所有信息。
这里是 fiddle:http://jsfiddle.net/q97dgjso/
以及一些可能对您有帮助的资源:http://www.html5rocks.com/en/tutorials/file/dndfiles/
https://developer.mozilla.org/en-US/docs/Using_files_from_web_applications
https://developer.mozilla.org/en/docs/Web/API/File
我必须用文件名填充数组。它是一个本地文件夹,里面有很多文件,我需要文件名 "go inside" 数组。 文件名[0] = australia.jpg 文件名[1] = italy.jpg 等等。
有什么想法吗?
谢谢。
我试过了,但没用:
var getFilesNames = function(){
var folderPath = Folder ("C:\Users\Giulio\Desktop");
var toteTempFiles = toteTempPath.getFiles();
var namesArr = [];
for(var i=0; i<toteTempFiles.length; i++){
var thisFile = toteTempFiles[i];
myNames.push(thisFile.name);
}
}
据我所知,不可能窥探用户的文件系统,这将是一个很大的安全问题。
但是,对于新文件 API,用户可以授予您访问某些文件的权限,从而允许您获取有关它们的信息并上传它们。但是,这确实涉及用户必须执行操作。
所以稍微改变你的要求你可以这样做:
<input type="file" id="input" multiple />
和JS
var inputElement = document.getElementById("input");
inputElement.addEventListener("change", handleFiles, false);
function handleFiles() {
var fileList = [];
for(var i = 0; i < this.files.length; i++) {
fileList.push(this.files[i].name);
}
console.log(fileList);
}
本质上,您有一个用户与之交互的输入。当它的值发生变化时,selected 了一些文件,onchange
处理程序将触发,为您提供有关文件 selected 的信息。
重要的是要注意 this.files
不是一个数组,而是一个类似对象的数组,就像 arguments
变量一样。所以你不能 map
或对它做 forEach
。
所以在您的使用中,它会稍微改变为用户必须 select 您需要的文件夹中的所有文件。然后您可以继续获取所需的所有信息。
这里是 fiddle:http://jsfiddle.net/q97dgjso/
以及一些可能对您有帮助的资源:http://www.html5rocks.com/en/tutorials/file/dndfiles/ https://developer.mozilla.org/en-US/docs/Using_files_from_web_applications https://developer.mozilla.org/en/docs/Web/API/File