如何使用兼容javascript的跨浏览器创建,保存txt文件

你知道在客户端用javacript创建和保存文件的任何跨浏览器方法吗?!

注意事项:

  1. 无法将其保存在服务器中,因为该文件将从财务打印机读取。
  2. 服务器无法访问客户端,这很明显,因为我们正在谈论Web中的Web应用程序。 因此服务器无法访问客户端文件夹。
  3. 新的ActiveXObject(“Scripting.FileSystemObject”); 仅适用于IE,甚至在IE中也不适用于所有版本。
  4. 我们正在谈论在财务打印机上打印,所以我不能要求超市的收银员下载文本文件并将其保存在财务打印机可以读取的文件夹中。
  5. 如果不是javascript,我还可以在asp .net 4.0 c# web应用程序中使用什么?

基本上,你说过,“我们正在谈论一个Web应用程序。” 您是否知道任何将文件保存到硬盘驱动器(除了cookie)的Web应用程序,而不首先向您显示下载提示?

话虽如此,浏览器已经开始提供超越cookie的持久性API 。 (例如,参见本文 。)但是这样的解决方案不符合您的跨浏览器要求。

您可以通过客户端Web服务实现这一点,只需在Web服务中创建一个函数,在您的硬盘驱动器中创建一个文本文件,然后将Web服务转换为客户端服务.Net框架制作客户端Java脚本然后您将能够在客户端使用Java脚本调用服务器端function,之后您的文件将不会在服务器中发布它将保存在您的硬盘中确定

您唯一的选择是使用来自HTML5的持久性API或创建浏览器插件(IE上的activex控件,其他人的NPAPI插件),可以为您执行文件访问。 您可以使用FireBreath来执行此操作,如果您了解C ++,则相对简单。

那就是说,这是一个非常危险的想法; 很难阻止人们在其他页面中使用你的插件,所以你的插件必须足够智能,以防止被想要读取(甚至写入)任意数据到你的硬盘驱动器的恶意网站滥用。

毕竟,浏览器本身不支持这一点的原因。 我会看看HTML5。

我们推出了一个简单的Windows服务nodejs应用程序,可以安装在本地机器上。 当Web应用程序需要创建文件时,它只使用localhost向此应用程序发送API调用,并为其编写文件。 干杯。