0

基本上我有一个字符串变量,它由两个用逗号分隔的其他变量组成:

item = "Pencil";
amount = 5;
entry = item + "," + amount;
*export entry to csv

所以“entry”变量应该是正确的格式,以保存为逗号分隔的文件。是否有一些命令可以获取此变量并将其保存为 csv,或者在电子表格中轻松打开以供以后使用的任何其他格式?入口变量将发生变化,如果新信息已经存在,则需要将其附加到 csv 文件中。所以假设我们也有:

item = "Paper";
amount = 25;
entry = item + "," + amount;
*export entry to csv

生成的 csv 文件应为:

铅笔,5
纸,25

我已经对其他问题进行了一些搜索,但是大多数人似乎都在尝试做更复杂的事情(例如,处理服务器与客户端问题),而我只是想弄清楚如何获取数据我在我自己的电脑上用javascript处理一个可保存的文件。似乎很多问题都不是这样。我确信那里有一个简单的答案,希望只有一个或两个命令。但是,我一直在浏览很多不太清楚的半相关帖子,所以我认为这会更快。

4

1 回答 1

0

这是完全可能的,使用一些FileSaver实现。我相信它在 IE10 上原生存在,但在其他浏览器上仍然需要一个 shim。

我编写了一个轻量级的客户端 CSV 生成器库,它可能会派上用场。在http://atornblad.se/github/ 上查看它(向下滚动到标题为Client-side CSV file generator

正如我所说,它需要一个有效的FileSaver实现来处理对window.saveAs(). 在http://eligrey.com/blog/post/saving-generated-files-on-the-client-side上查看 Eli Grey 的解决方案

到位后,您只需像这样动态生成并保存 CSV 文件:

var propertyOrder = ["name", "age", "height"];

var csv = new Csv(propertyOrder);

csv.add({ name : "Anders",
          age : 38,
          height : "178cm" });

csv.add({ name : "John Doe",
          age : 50,
          height : "184cm" });

csv.saveAs("people.csv");
于 2014-02-21T08:43:31.630 回答