【问题标题】:How can I add a column (with a static value) to a CSV file in google apps script?如何在 Google Apps 脚本中向 CSV 文件添加列(具有静态值)?
【发布时间】:2020-09-27 21:42:23
【问题描述】:

我正在尝试将 CSV 谷歌驱动器文件加载到 bigtable,类似于此处的加载 CSV 示例:https://developers.google.com/apps-script/advanced/bigquery

但是,CSV 文件缺少一列。我想添加一列,该列中的值(对于每一行)将是文件的名称。我遇到的问题是,在上传到 BigTable 之前,我不知道如何将该列添加到数据中。

此外,我需要以一种不太昂贵的方式进行操作:我有数千个 CSV 文件(每个文件都有数千行)。该链接中的方法允许我访问文件并将整个文件/blob 传递给 bigtable 一行,而不是一次一行。如果可能的话,我想保持这种效率。

(我基本上是从每个 CSV 文件中取出所有行并将它们组合到一个大表中,并带有一个额外的列来指示它们来自哪个文件)

【问题讨论】:

    标签: javascript csv google-apps-script blob google-cloud-bigtable


    【解决方案1】:

    您可以使用 Utilities.parseCSV() 然后 Array.unshift() 在每行的开头添加一列,或者使用 Array.splice() 将它们放在您想要的任何位置。完成后,您也许可以使用 Array.join() 将它们恢复为字符串。

    【讨论】:

    • 谢谢,使用这种方法,我必须单独循环遍历数组中的每个项目和 .unshift(),对吗?
    • 您必须遍历行。我想你尝试使用 setValues() 并进入一个已经有一个列的电子表格,然后使用 getValues 到相同数量的行和一个多列我不知道哪个会更快,但我的猜测是它在数组中更快。添加一个javascript标签也许其中一个可能会有所帮助。
    猜你喜欢
    • 2015-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多