gpt4 book ai didi

csv - 将 CSV 附件导入谷歌表格

转载 作者:行者123 更新时间:2023-12-03 19:33:07 26 4
gpt4 key购买 nike

我想要做的是将 CSV 附件的内容输出到 Google 表格中。不知道我这样做是否正确,但我在网上找到了这个,运行了它,然后什么也没发生。

function importCSVFromGmail() {
var threads = GmailApp.search("from:cbuffone123@gmail.com");
var message = threads[0].getMessages()[0];
var attachment = message.getAttachments()[0];

// Is the attachment a CSV file
if (attachment.getContentType() === "text/csv") {
var sheet = SpreadsheetApp.getActiveSheet();
var csvData = Utilities.parseCsv(attachment.getDataAsString(), ",");

// Remember to clear the content of the sheet before importing new data
sheet.clearContents().clearFormats();
sheet.getRange(1, 1, csvData.length, csvData[0].length).setValues(csvData);
}
}

最佳答案

在我的环境中,当附加 *.csv 时,我确认了这一点。从电子邮件中检索文件,mimeType 检索为 application/vnd.ms-excel .我认为“什么也没发生”的原因是这个。那么这些修改呢?我认为有几种解决方法可以解决您的情况。因此,请将这些修改视为其中的 3 个。

retrofit 要点:

  • 模式 1:从文件名设置 mimeType。
  • 模式 2:使用 mimeType 作为 application/vnd.ms-excel
  • 模式 3:使用扩展。

  • 模式一:

    请在 if (attachment.getContentType() === "text/csv") {前添加以下脚本.
    attachment.setContentTypeFromExtension();

    模式2:

    请修改如下。

    从:
    if (attachment.getContentType() === "text/csv") {

    到:
    if (attachment.getContentType() === "application/vnd.ms-excel") {

    模式 3:

    请修改如下。

    从:
    if (attachment.getContentType() === "text/csv") {

    到:
    var fileName = attachment.getName().toUpperCase().split(".");
    if (fileName.length > 1 && fileName[1] == "CSV") {

    笔记:
  • 关于模式 1,mimeType 是通过使用 setContentTypeFromExtension() 从文件名的扩展名设置的。 .
  • 关于模式2,如果在你的环境中,CSV文件被检索为其他mimeType,请修改application/vnd.ms-excel .
  • 关于模式1和3,如果CSV文件的文件名没有扩展名或其他扩展名,则在这种情况下无法使用。

  • 引用:
  • setContentTypeFromExtension()

  • 如果这些不是你想要的,我很抱歉。

    关于csv - 将 CSV 附件导入谷歌表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52484198/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com