首页 > 解决方案 > Google Script 从 Google Drive 导入 txt 文件

问题描述

所以我正在尝试编写一个脚本来根据文件名和选项卡名称导入文本文件。

txt 文件是游戏服务器日志提取,3 种不同类型的日志。

我已经设法让脚本根据文件名(类型)导入文本,但是在移动到下一个类型或日志之前在循环结束时运行一些简单的格式时遇到问题。

基本上,脚本从日志文件中导入所有文本,将其解析为 CSV 并将其转储到工作表中。该工作表删除了重复项,将文本拆分为列等,它们应该转到下一种类型的日志(和切换选项卡) - 重复。

我还在接脚本所以请温柔....!任何帮助是极大的赞赏。

function ImportAll() {
var folderID = "my google drive foler"
var folder = DriveApp.getFolderById(folderID);
var ss, sRow, lRow, fRow, csvData, logFile, file, sheet = 
SpreadsheetApp.getActive();

var data = [];
var logType = ["admin_", "kill_", "login_"]
var allSheets = ['Admin', 'Kill', 'Login']


for (var k = 0; k < logType.length; k++) {
  var files = folder.searchFiles('title contains "' + logType[k] + '"');
  while (files.hasNext()) {
    file = files.next();   
    data.push(file.getName())
  };
  ss = sheet.getSheetByName(allsheets[k])
  sRow = ss.getDataRange().getLastRow() + 1;
  //Browser.msgBox(data[0])
  for (var i = 0; i < data.length; i++) {
    logFile = DriveApp.getFilesByName(data[i]).next();
    csvData = Utilities.parseCsv(logFile.getBlob().getDataAsString());
    fRow = ss.getDataRange().getLastRow() + 1;
    ss.getRange(fRow, 1, csvData.length, csvData[0].length).setValues(csvData);

  };
  lRow = ss.getDataRange().getLastRow();
  ss.getRange('A' + sRow + ':A' + lRow).removeDuplicates().activate();  
  ss.getRange('A' + sRow + ':A' + lRow).splitTextToColumns('-');
  ss.getRange('B' + sRow + ':B' + lRow).splitTextToColumns(':');
  ss.getRange('B:B').setNumberFormat('HH:mm:ss');
  ss.getFilter().remove();
  ss.getRange('A1:E' + lRow).createFilter();

  var rng = sheet.getRange('D2:D' + lRow)
  var rngV = rng.getValues();
  var String = "";    

  for(var i=0;i<rngV.length;i++)
  {
    String = rngV[i].toString().replace(s, '')
    rngV[i] = String // is working 
  }

  rng.setValues(rngV)  // NOT WORKING!!!!!!

  //sheet.appendRow(data); //throws [L]JavaLang@****
}

};
}

我不断被抛出“TypeError:无法调用 null 的方法“getDataRange”。” 错误,我尝试了很多不同的东西都无济于事。

标签: arraysgoogle-apps-scriptgoogle-sheetsformatsetvalue

解决方案


推荐阅读