如何在Javascript中生成文本文件并下载zip文件?

时间:2015-06-20 09:17:41

标签: javascript download zip text-files

我想知道Javascript中的最佳方式(可能在JQuery中)如果能够执行以下操作而无需服务器编码:

  1. 从多组对象生成大约20个文本文件。
  2. 将这些文件压缩为ZIP文件。
  3. 下载此ZIP文件。
  4. 1。从对象集生成大约20个文本文件

    大约有20组物体,每组物体约有90个物体。以下是对象集的示例:

    var cardsPlayer1 = {
      name : "Player 1",
      [
        {nbCopies : 3, name : "Noise"},
        {nbCopies : 1, name : "Parasite"},
        {nbCopies : 2, name : "Sure Gamble"},
        ... (around 90 of these objects)
      ]
    };
    
    var cardsPlayer2 = 
      name : "Player 2",
      [
        {nbCopies : 1, name : "Gabriel Santiago"},
        {nbCopies : 3, name : "Pipeline"},
        {nbCopies : 2, name : "Aurora"},
        ... (around 90 of these objects)
      ]
    };
    
    ... (until cardsPlayer20)
    

    生成的文本文件应为:

    player1.txt

    3 Noise
    1 Parasite
    2 Sure Gamble
    ...
    

    player2.txt

    1 Gabriel Santiago
    2 Pipeline
    2 Aurora
    ...
    

    ...(直到 player20.txt

    2。将这些文件压缩成ZIP文件

    我想ZIP player1.txt直到player20.txt成为ZIP文件的player.zip。

    3。下载此ZIP文件

    我想下载ZIP文件players.zip。

    感谢您的帮助和答案。

1 个答案:

答案 0 :(得分:1)

just use some JavaScript zip library eg https://stuk.github.io/jszip/ and a file saver https://github.com/eligrey/FileSaver.js/.

jszip provides all necessary examples to put files into the zipfile (this covers points 1 and 2). Using FileSaver.js is also pretty straightforward as for point 3.