【问题标题】:Getting content of a local file without uploading [duplicate]在不上传的情况下获取本地文件的内容[重复]
【发布时间】:2023-03-12 11:00:01
【问题描述】:

我正在编写一个离线 web 应用程序,它允许用户选择本地文件,修改它,然后在本地保存一个副本。没有任何服务器是否可能(我可以上传文件并返回它的base64,但它不是很离线)?应用程序只需要在谷歌浏览器上运行,所以我应该看看这里吗?

【问题讨论】:

    标签: javascript web-applications google-chrome file-upload offline


    【解决方案1】:
     input = document.getElementById(inputId);          
    
     var reader = new FileReader();
    
     reader.onload = function (e) {
         base64 = e.target.result;
     };
    
     reader.readAsDataURL(input.files[0]);
    

    其中输入是元素<input type='file'></input>。也适用于可以选择多个文件的输入。

    【讨论】:

      【解决方案2】:

      要在浏览器中处理文件,我使用downloadify。为了使其与包含“file://”的路径一起工作,您需要允许 downloadify.swf 访问 settings 上的文件系统。

      【讨论】:

      • 我猜你被否决了,因为 OP 声明“没有任何服务器”,有人在你的回答中看到了 file://。在这里,为 0 加 1。
      • 没有服务器。由于 Adob​​e 安全策略,“file://”出现在此处。 SWF 文件是为网络编译或与本地文件系统一起工作的。 downloadify.swf 被编译为与网络一起使用,因此对文件系统的访问受到限制。
      • @RobW 我显然不赞成他使用闪光灯..
      【解决方案3】:

      【讨论】:

      • 该规范目前只允许用户沙箱中的文件。 :(
      • 嗯,它似乎对我有用 :) 谢谢!
      • HTML5 是未来!将其用于未来的发展
      猜你喜欢
      • 2016-07-05
      • 2019-10-24
      • 2019-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-08
      • 1970-01-01
      • 2015-06-20
      相关资源
      最近更新 更多