gpt4 book ai didi

javascript - 谷歌脚本: How to script an automatic import from a txt in my drive into spreadsheet?

转载 作者:太空宇宙 更新时间:2023-11-04 15:53:54 25 4
gpt4 key购买 nike

我以前从未使用过 Javascript,并且多年来我一直在尝试这样做,但没有成功,而且我找不到任何以前的人尝试过。我想直接从驱动器中的 txt 文档复制文本数据,可以手动完成此操作,但我希望每天自动完成。

文本文档;

Boxes Made,3  
Target Percentage,34
Hourly Rate,2

如果我将其导入到具有这些设置的电子表格中,那就完美了;

Import Settings

它是这样导入的;

After Import

现在我需要尝试自动化此操作,以便脚本自动导入它。到目前为止我的脚本不起作用,请帮忙。

当前脚本;

 function AutoImporter (Source)
{
var Source = DriveApp.getFilesByName('DailyData.txt');
var TextContents = Source.copyText();
var Target = SpreadsheetApp.getActiveSheet();

Target.appendText(TextContents[1]);
}

--编辑

有人刚刚给我发了一个看起来更接近但仍然不起作用的脚本;

function autoCSV() {
var ss=SpreadsheetApp.getActiveSpreadsheet();
var s=ss.getActiveSheet();
var r=s.getActiveCell();
var id="DailyData.txt";//<<<<<enter the ID of the text file
var f3=DriveApp.getFileById(id);
var lst1=f3.getBlob().getDataAsString().split('\n').map(function(x) {return x.split(',')});
var ncols=1,i,lst2=[];
for (i in lst1) {if (lst1[i].length>ncols) ncols=lst1[i].length;}
for (i=0;i<ncols;i++) lst2.push('');
for (i in lst1) lst1[i]=lst1[i].concat(lst2.slice(0,lst2.length-lst1[i].length));

s.getRange(r.getRow(), r.getColumn(), lst1.length, ncols).setValues(lst1);
}

最佳答案

您可以通过以下方式从 Google 云端硬盘读取文本文件:

'use strict'; // <- Always use strict mode.

function foo() {

var fileName = 'DailyData.txt';
var files = DriveApp.getFilesByName(fileName);
if (!files.hasNext()) {
throw new Error('No file with name:' + fileName);
}
// We take only the first file among all files with such name.
var file = files.next();
var text = file.getBlob().getDataAsString('utf8');
Logger.log(text);
// Now you have to parse the file.

}

文档:

  1. DriveApp.getFilesByName返回File的集合。
  2. File.getBlob返回Blob
  3. Blob.getDataAsString返回字符串

关于javascript - 谷歌脚本: How to script an automatic import from a txt in my drive into spreadsheet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42875735/

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