Сохранить и изменить имя файла с помощью chrome.filesystem
Возможно ли это с помощью chrome.fileSystem, чтобы сохранить файл на клиентском диске, но изменив имя файла. Например, я сжимаю файл и хочу, чтобы этот файл хранился на диске, например, с моим новым именем newFile.min.js. Я могу сохранить файл на диск, но не изменить его имя. И то, что я хотел бы, чтобы все было сделано в "тихом" без окна, которое запрашивает местоположение.
Вот функция, которую я использую для сохранения своих файлов:
function saveToEntry(entry, result) {
setTitle();
var blob = new Blob([result], {type: 'text/plain'});
currentEntry.createWriter(function(writer) {
writer.onwrite = function() {
writer.onwrite = null;
writer.write(blob);
}
writer.truncate(blob.size);
});
}
function setTitle() {
chrome.fileSystem.getDisplayPath(
currentEntry,
function(path) {
console.log(path);
document.title = path;
});
}
Это возможно? И если это так, если у вас есть какой-либо пример, чтобы привести меня, было бы здорово. Если нет, было бы тоже здорово:)
Заранее благодарю за совет!
1 ответ
Для этого (сохранение в отдельном файле), я боюсь, что вам нужно спросить пользователя о праве записи для папки, а не отдельного файла. Тогда вы сможете создать новый файл в нем.
Я предлагаю вам либо попросить пользователя выбрать "рабочий" каталог, представить из этой папки средство выбора файлов в приложении и сохранить результат рядом с обычным файлом.
Также можно попросить пользователя выбрать папку "output" и вывести туда результаты.
Другим решением может быть требование модуля Native Host. Вы сможете получить доступ к системе с теми же правами, что и у пользователя. Это ограничит ваши возможности развертывания: вам понадобится отдельный установщик для вашего модуля, который нельзя разместить в Chrome Web Store.