是否可以读取使用文件输入控件选择的文件的内容?我希望做的事情如下:

<input type="file" id="fileInput" onblur="readFile(this)"/>

<script language="javascript">
   function readFile(file) {
     document.write(file);
   }
</script>

这样的事情可能吗?或者文件上传只是将文件发送到服务器。

有帮助吗?

解决方案

可以在 Firefox 中使用,但它不是标准化的,因此无法实现可以跨浏览器移植(例如,WebKit不支持它)。您最好的选择可能是将文件上传到服务器,然后使用 XMLHTTPRequest 再次下载。

其他提示

如果您使用HTA(超文本终端应用程序,请参阅 http://msdn.microsoft.com/en-us/library/ms536496(VS.85)的.aspx )。如果你这样做,你将被绑定到Internet Explorer,但可以自由访问文件,注册表等。当然存在安全问题。

在许多浏览器中可能无法实现。如果我们使用用户的凭据给anytaty javascript读取文件系统中的任意文件的能力,会发生什么?坏事。恶意javascript可以轻松获取文件数据并将其发回服务器,在后台安静地窥探所有文件。

我怀疑这是可能的,我强烈建议不要这样做。

如果它只是客户端,为什么要使用Web应用程序?这可以显示的唯一文件是纯文本,有许多更简单的方式来查看内容。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top