jQuery перемещает локальные файлы в другой каталог - PullRequest
0 голосов
/ 30 мая 2018

Я хотел бы создать функцию, которая будет считать файлы из каталога.Если имеется 5 файлов, переместите самый старый файл в другой каталог.

Я нашел код sample , но он не работает для моего случая.

var myFileList = Folder("C:/Test").getFiles();
var folderCount = GetFoldersCount(myFileList) ;
$.writeln(folderCount);

function GetFoldersCount(fileList) {
    var folderCount = 0;
    console.log(folderCount);
    for (var i = 0; i < fileList.length; i++) {
        var myFile = myFileList[i];
        if (myFile instanceof Folder)
        folderCount++;
    }
    return folderCount
}

Я получаю сообщение об ошибке «Папка» не определена .

Ответы [ 2 ]

0 голосов
/ 04 июня 2018

Я нашел решение для этой задачи, которое идеально подходит для меня.

Я вызываю функцию с начальным каталогом:

moveErrorFiles('C:\\Folder1');

А ниже приведены две простые функции, которые яиспользовать.

function moveErrorFiles(fileDir) {
    var fileSysObj, file, folder, fileCounter, currentFile;
    var fileMumber = 0;

    fileSysObj = new ActiveXObject("Scripting.FileSystemObject");
    folder = fileSysObj.GetFolder(fileDir);
    fileCounter = new Enumerator(folder.files);

    for (; !fileCounter.atEnd(); fileCounter.moveNext()) {
        currentFile = fileCounter.item();
        fileMumber++;
        if (fileMumber > 5) {
            moveFile(currentFile);
        }
    }
}   //function moveErrorFiles() ends here

function moveFile(fileToMove) {
    var object = new ActiveXObject("Scripting.FileSystemObject");
    var file = object.GetFile(fileToMove);
    file.Move("C:\\Folder2\\");
    console.log("File was moved successfully");
}   //function moveFile() ends here
0 голосов
/ 30 мая 2018

Невозможно напрямую получить доступ к локальным файлам с помощью JS для обеспечения безопасности.Другое дело, что вы можете обращаться к файлам на диске через Ajax-вызов и обрабатывать в ответ.Используя Ajax вы можете отправить запрос, что вы хотите сделать это в фоновом режиме.

Вы использовали пример на форуме InDesign.Я не знаю InDesign, но я не уверен, что это будет работать.В противном случае ищите документацию по HTML5 File API.Надеюсь, что вы найдете ответ.https://w3c.github.io/FileAPI/

некоторые примеры: https://www.html5rocks.com/en/tutorials/file/dndfiles/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...