你能通过Javascript保存/加载文件吗?

时间:2013-07-30 20:04:18

标签: javascript file load save

我想使用HTML5(Canvas)创建一个非常简单的Javascript游戏。但是可以保存一个简单的.txt文件并加载一个简单的.txt文件。我只需要像一些简单的整数一样存储。但我只是想知道是否允许javascript保存并加载外部文件?

帆布

4 个答案:

答案 0 :(得分:3)

在Chrome上,您可以依赖FileSystem API(适用于简介take a look here)。可能其他浏览器很快就会增加对它的支持。

但是,如果你的需要只是像一些简单的整数一样存储"我会考虑local storage

答案 1 :(得分:2)

从html5开始,您可以使用LocalStorage API。如今几乎所有浏览器都支持它:

// Check if it is supported in your browser
function supports_html5_storage()
{
      try
      {
        return 'localStorage' in window && window['localStorage'] !== null;
      }
      catch (e)
      {
        return false;
      }
}

//make use of it:
if( supports_html5_storage() == true )
{
   localStorage.setItem("myItem", "myData");
   var myDataString = localStorage.getItem("myItem");
   alert(myDataString);
}

答案 2 :(得分:1)

您不能直接使用javascript访问本地文件系统,但是当您让用户进行交互时(例如,让用户选择要上载的文件),这是可能的。见http://www.html5rocks.com/en/tutorials/file/dndfiles/

另一种可能性是本地存储。请参阅http://davidwalsh.name/html5-storagehttp://www.w3.org/TR/webstorage/

答案 3 :(得分:1)

简而言之,没有。根据David Flanagan的“JavaScript:The Definitive Guide”:

  

输入和输出(以及更复杂的功能,例如   网络,存储和图形)是'主机'的责任   嵌入JavaScript的环境。

更大的问题是为什么。想想如果JavaScript可以将文件写入硬盘驱动器会有多危险。如果您访问过的任何网站可以访问您的本地文件系统,该怎么办?