1

我正在开发桌面应用程序项目。我正在使用带有 Visual c++ 的Qt控件。我在 QWebView 中加载一个 html 文件,

m_pWebView->load(QUrl("../../../demo/index_Splash_Screen.html"));

现在,我想要的是,比如说,我.zip的位置“c:\demo”中有一些文件,我想要该目录中存在的文件的列表(或文件名数组)。

我怎样才能通过 javascript 做到这一点?

PS:我通过了这个链接,但它不符合我的要求。我没有使用过 html、javascript 和 jquery。请帮我。

4

2 回答 2

2

由于安全问题,恐怕您无法使用 javascript 访问本地文件或目录。

编辑:我没有想过文件 api 所以想了一会儿这可能不是真的,但是如果没有一些用户输入来授予权限,这仍然无法完成。

这个问题得到了 PhilNicholas 的良好回应:

恐怕我可能会为您的设计带来坏消息:您请求的操作明确违反了 File API 规范中指定的安全模型。FileReader() 的客户端实现必须确保“用户首先选择了 FileReader 对象正在读取的所有文件”。(W3C 文件 API,13。安全注意事项:http ://www.w3.org/TR/FileAPI/#security-discussion )。

浏览器脚本可能会在没有任何用户交互的情况下任意打开和读取路径中的任何文件,这将是一个巨大的安全风险。没有浏览器制造商会允许像这样不受限制地访问整个文件系统。

但是考虑一下,如果它全部在本地运行,您可以使用 ajax 来查询可以返回您请求的目录的服务器端脚本。

于 2013-11-28T11:41:59.423 回答
1

如果它是一个 Windows 应用程序,那么您可以使用 ActiveX 对象访问本地文件系统。您可能会查看此链接Reading a txt file from Javascript

请注意,只有在使用 IE 作为浏览器/引擎时才可以使用 activeX;前段时间我曾经需要它来开发 HTML 应用程序(.hta 文件)。

于 2013-11-28T11:52:09.843 回答