Как отличить папки и файлы от перетаскивания Ajax загрузку в FireFox

Не могу найти способ различать папки и файлы дропа в FireFox Ajax. Похоже, в FireFox FileAPI нет признаков, по которым можно было бы определить, папка это или файл.

Однако я вижу, что документы Google каким-то образом могут различать папки и файлы. Он не зависит от расширений или длины файла, файлы без расширений загружаются корректно, а файлы с нулевой длиной загружаются без проблем.

Как различать файлы и папки во время D&D в FF?


person IT Hit WebDAV    schedule 04.12.2013    source источник


Ответы (1)


В этом сообщении блога предлагается попытаться прочитать файл и отреагировать на исключение, которое будет выдано, если это папка.

if (!f.type && f.size%4096 == 0 && f.size <= 102400) {
    try {
        reader = new FileReader();
        reader.readAsBinaryString(f);
    } catch (NS_ERROR_FILE_ACCESS_DENIED) {
    //file is a directory
    }
}

В общем: сначала предположим, что папка — это файл, и относитесь к нему как к одному, в какой-то момент что-то пойдет не так, и вы сможете отреагировать на это.

person Jan Schejbal    schedule 08.12.2013