【问题标题】:Renaming file with filepicker.io使用 filepicker.io 重命名文件
【发布时间】:2013-03-21 16:17:48
【问题描述】:

这是我的用例:用户将单击“保存”链接,将出现一个 filepicker.export() 对话框,选择位置和名称并保存文件。这是奇特的部分:那时我还没有文件。它需要先用 GET 请求下载,然后存储在 filepicker 中。在用户单击“保存”之前,我不知道要开始下载哪个文件。

这可以通过在用户单击“保存”时首先下载文件,然后才显示 filepicker.export() 对话框来处理。但是,我觉得这很麻烦,因为用户必须等待下载完成才能选择文件名和位置。

让用户首先做出选择会更好,例如“Dropbox/image.png”,并在下载运行时存储某种占位符:“Dropbox/image.png.part”。稍后,当下载完成后,我可以将数据写入文件并将其重命名为“Dropbox/image.png”。

这是我的问题:

  1. 是否可以将“.part”附加到用户在 filepicker.export() 调用中选择的文件名?
  2. 更重要的是,虽然我知道如何在下载完成后写入文件,但有没有办法重命名它?我尝试使用相同的文件选择器 URL 和不同的文件名创建一个新的 fpfile 对象,新文件名被忽略(尽管写入成功)。

【问题讨论】:

    标签: filepicker.io


    【解决方案1】:

    我的建议是首先在一个空文件上调用filepicker.export,并允许用户指定他们想要的文件的名称以及在他们的云存储中的位置。当filepicker.export 调用完成时,它会将一个 FPFile 传递给回调。从那里,您可以下载您需要的任何必要内容,然后发送filepicker.write 以将内容保存到用户选择的位置。

    不需要重命名文件,因为用户已经在 filepicker.export() 调用期间提供了他们想要保存文件的名称。

    【讨论】:

    • 我只是觉得用户看到那里的文件准备就绪并且可用,但是当他们打开它时发现它是空的会有点奇怪。我想我会选择这种方式,因为没有更好的方式。感谢您的回答!
    猜你喜欢
    • 2016-05-29
    • 1970-01-01
    • 2012-06-20
    • 2013-08-24
    • 2016-01-18
    • 2022-11-25
    • 2016-06-08
    • 2021-02-13
    • 2014-04-25
    相关资源
    最近更新 更多