如何使用WinJS同时保存多个文件?
How Can You Save Multiple Files At Once with WinJS?
我正在为Windows 8和Windows 10的Windows Store制作一个WinJS应用程序。我正在为我的公司制作一个应用程序,在用户流程结束时,他们希望单击导出按钮,将大约10个文件保存到他们选择的文件夹中。
现在,我知道如何使用Windows.Storage.Pickers.FileSavePicker()
来保存单个文件,但我不想让用户承担接受10个文件中的每个文件的保存的负担——我只想让用户接受他们要进入的文件夹,然后它一次性保存所有文件。
在WinJS中是可能的吗?
但是我不想给用户负担接受每一个10个文件的保存——我只想让用户接受他们要进入的文件夹,然后它一次性保存它们。
您可以使用FolderPicker来获取目标文件夹,并使用StorageFolder。CreateFileAsync生成10个文件,并将你想要的内容复制到文件:
var pickers = Windows.Storage.Pickers;
var DataWriter = Windows.Storage.Streams.DataWriter;
...
document.getElementById("btnSave").onclick = function (evt)
{
var content = "Test Content";
var picker = new pickers.FolderPicker();
picker.suggestedStartLocation = pickers.PickerLocationId.computerFolder;
picker.fileTypeFilter.append(".txt");
picker.pickSingleFolderAsync().then(function (folder) {
if (folder != null)
{
for (var i = 1; i < 11; i++) {
folder.createFileAsync("testFile" +i+ ".txt", Windows.Storage.CreationCollisionOption.replaceExisting)
.then(function (file) {
file.openAsync(Windows.Storage.FileAccessMode.readWrite)
.then(function (randomAccessStream) {
var dataWriter = new DataWriter(randomAccessStream.getOutputStreamAt(0));
dataWriter.writeString(content);
dataWriter.storeAsync().done(function () {
randomAccessStream.close();
dataWriter.close();
});
}, errorHandler);
}, errorHandler);
}
}
}, errorHandler)
}
function errorHandler(error){}
相关文章:
- AngularJS可以在没有任何服务器端技术的情况下将文件保存/写入服务器
- 将从浏览器创建的文件保存到磁盘 - 不能在 Firefox 上使用新的 File()
- 将用JavaScript生成的二进制文件保存到iPad
- 希望将客户端生成的二进制文件保存到客户端机器
- 是否将PDF文件保存在其他应用程序可以访问的PhoneGap应用程序中?(iOS)
- Chrome、Firefox转换“:"至“-"以及“_"分别显示在文件保存对话框中
- Grunt Copy任务不复制父文件夹's文件保存到正确的文件夹中
- 如何将画布作为 jpg 文件保存到服务器时增加 DPI
- Chrome扩展程序如何将许多文件保存到用户指定的目录中
- 使用 PHP 标头将文件保存在本地 PC 中
- 使用 javascript 将上传的文件保存到具有特定名称的特定位置
- 保存文件选项,用于将html文件保存在系统中的给定位置
- 将编辑html文件保存到特定文件夹
- jQuery旋转图像并使用相同的名称文件保存它们(覆盖)
- 文件保存和要求JS:不匹配的匿名定义
- CasperJS下载并将文件保存到特定位置
- 将音频文件保存在轨道中
- 如何显示来自 Chrome 扩展程序的文件保存对话框
- 如何在 Node.js 中使用 multer 将文件保存在项目文件夹中
- 如何使用JavaScript将文件保存在相对路径中