【问题标题】:Local filesystem & web browser本地文件系统和网络浏览器
【发布时间】:2012-02-14 21:09:43
【问题描述】:

请问,有谁知道从浏览器访问本地文件系统的可能性有哪些?我正在寻找的用例是是否有可能创建一个可以在本地保存文本文件的非常简单的文本编辑器?如果是这样,实现这样的事情需要什么技术?

我知道,从历史上看,这肯定是不可能的。但是现在我们有了 Ajax 和 co。有时可以打开本地文件。甚至还有某种形式的本地数据库(好吧,不是文件),也许某个浏览器的扩展被允许将文件写入某个(预定义)位置,然后有本地 Web 服务器可以作为一种代理。我什至看到了 [1],尽管我不确定它的支持程度如何。还有什么?

换句话说,假设您打开记事本,输入相同的文本。现在您单击“保存”,它会询问路径并保存它[2]。下次保存文件时,它会记住路径并立即保存新内容。浏览器可以吗?

[1]http://dev.w3.org/2009/dap/file-system/pub/FileSystem/

[2] 参见例如http://www.nihilogic.dk/labs/canvas2image/(“保存 PNG”)

【问题讨论】:

  • Can I Use: File API。该站点向您展示了当前和计划发布的主要浏览器对各种 API 的支持级别。文件 API 在桌面浏览器中的支持似乎还不错,而目前在移动浏览器中的支持不是很好。
  • @ecir,链接编号。 2 不工作。

标签: javascript filesystems browser


【解决方案1】:

有一些新的 html5 javascript 方法,称为 file api 和 filereader api。我只有文件 api 的经验。前段时间试了一下,发现FF和Chrome还不一致。

您可以在 MDN 上找到更多信息:

https://developer.mozilla.org/en/DOM/FileReader

https://developer.mozilla.org/en/Using_files_from_web_applications

【讨论】:

  • 是否也可以写入文件?
  • 我不认为它会按照你想要的方式工作。还有另一个 api 称为文件系统 api。你可以在这里找到更多的描述:html5rocks.com/en/tutorials/file/filesystem我让它在 chrome 中工作,但在 Firefox 中没有。没有在任何其他浏览器中测试它。在 chrome 中,我在操作系统的文件系统中找不到实际文件。似乎您只能使用浏览器中创建的 url 访问它们。
【解决方案2】:

回到 2020 年,您可能正在追随 Electron JS,它提供了一个独立的操作系统平台,可以使用 JS、Html 和 CSS 开发桌面程序。它使用 Chromium 和 NodeJs。已知的应用有 GithubDesktop(Github 是 ElectronJS 的创始人之一)、WhatsApp 和 VSCode。

【讨论】:

    猜你喜欢
    • 2016-04-01
    • 2021-01-22
    • 1970-01-01
    • 1970-01-01
    • 2013-04-25
    • 2014-06-07
    • 1970-01-01
    • 2018-03-10
    • 2022-08-10
    相关资源
    最近更新 更多