Hallo Rolf,
laut meinem Debugger ist die Methode getFile() nicht vorhanden.
var dt = e.dataTransfer;
var items = dt.items;
for (var i=0; i<items.length; i++) {
item = items[i].webkitGetAsEntry();
iterateFilesAndDirs(item);
}
function iterateFilesAndDirs(item,path) {
path = path || "";
if (item.isFile) { // ist eine Datei
allfiles.push(item);
previewFile(item,path);
} else if (item.isDirectory) {
// hole Verzeichnis-Inhalt
var dirReader = item.createReader();
dirReader.readEntries(function(entries) {
for (var i=0; i<entries.length; i++) {
iterateFilesAndDirs(entries[i], path + item.name + "/");
}
});
}
}
Beim Upload laufe ich durch alle Einträge von allfiles[]
.
Hier benötige ich dann das File-Objekt, um die Größe der Datei zu ermitteln und die Datei scheibchenweise zu lesen.
Laut Debugger ist jeder Eintrag sauber vom Typ FileSystemFileEntry.
Als Methode finde ich nur <prototype>. Darunter gibt es zwar eine Methode file(), aber wenn ich diese aufrufe, erhalte ich die Fehlermeldung:
Uncaught TypeError: 'file' called on an object that does not implement interface FileSystemFileEntry.
LG Steffen