【发布时间】:2012-05-22 05:00:10
【问题描述】:
有没有办法使用 javascript 读取和写入文件(.txt 或任何其他文件)。
澄清一下我不想使用 JQuery 库。
【问题讨论】:
标签: javascript
有没有办法使用 javascript 读取和写入文件(.txt 或任何其他文件)。
澄清一下我不想使用 JQuery 库。
【问题讨论】:
标签: javascript
JavaScript 在沙箱中执行,以保护计算机免受恶意人员的操纵,因此您无法访问文件系统。
但是,您可以将内容存储在 DOM Local Storage 中。 “Flash Cookie” (Flash Local Storage Objects) 也经常用于类似目的。
【讨论】:
不,不使用非特权 JavaScript。通过 HTTP 或 HTTPS 在 Web 浏览器中加载的任何 JavaScript 都没有访问文件系统的权限。这可能会对个人的个人数据安全产生严重影响。
但是,具有 Chrome 权限的 JavaScript(例如通过 Firefox 扩展、Thunderbird 扩展或 XULRunner 应用程序中的 chrome:// URL 加载的 JavaScript)就是所谓的特权 JavaScript。这种类型的 JavaScript 可以做通常在 Web 上提供的 JavaScript 无法完成的事情。例如,特权 JavaScript 可以读取和写入文件等等。
使基于 chrome 的 JavaScript 或特权 JavaScript 能够做更多事情的主要因素是用户必须在他们的计算机上明确安装它并允许它访问本地计算机。
最后,还有服务器端 JavaScript,例如 Rhino 或 NodeJS,它们被设计为在服务器上运行。虽然他们无法读取/写入客户端用户的文件系统,但他们当然可以读取和写入服务器的文件系统。
【讨论】:
这是不可能的。浏览器 javascript 无权访问文件系统。否则将是一个巨大的安全漏洞。
【讨论】:
使用 node.js http://nodejs.org/docs/v0.4.8/api/fs.html#file_System 或 HTML 5 http://www.html5rocks.com/en/tutorials/file/dndfiles/(用于读取文件)
【讨论】: