我正在尝试使用 Google Apps 脚本在 Google Drive 中创建一个大文件。该文件合并了三个文件。我的代码是:
function unirFicheros(idDirectorio,nombreFichero, numeroFicheros){
var nombreTotal=nombreFichero;
var strTotal="";
var docTotal = DocsList.createFile(nombreTotal, strTotal);
Utilities.sleep(5000);
Logger.log("SE CREA TOTAL: " + numeroFicheros);
for(var i=1;i<=numeroFicheros;i++){
Logger.log("ENTRO EN EL FOR");
var nombrePartes=nombreFichero+i+".csv";
Logger.log("NOMBREPARTES: " + nombrePartes);
var id=listFilesInFolder(idDirectorio,nombrePartes);
var docPartes = DocsList.getFileById(id);
Utilities.sleep(5000);
Logger.log("Existe el fichero");
var str = docPartes.getContentAsString();
Logger.log("UNE LA CADENA");
strTotal = strTotal+str;
Utilities.sleep(5000);
docTotal.replace(strTotal);
Utilities.sleep(30000);
}
return docTotal;
}
出现的错误是:
执行操作: 存档备份_执行_产品将在最大允许范围内存档。
(执行失败:文件 backup_actuaciones_PROD 文件大小超出允许的最大值。)
我尝试生成不带格式的文件,因为互联网说这些文件更大。实际上,我的文件有 44 MB,但我需要 427 MB。
Regards.
DriveApp.createFile() https://developers.google.com/apps-script/reference/drive/drive-app#createFile%28String,String%29包括一个注释,它...Throws an exception if content is larger than 10MB
。我预计此限制也会影响DocsList.createFile()
and DocsList.replace()
.
通过避免需要处理整个内容,您可能会获得更好的结果docTotal
. Use File.append() https://developers.google.com/apps-script/reference/docs-list/file#append%28String%29添加每个文件的内容:
...
var str = docPartes.getContentAsString();
Logger.log("UNE LA CADENA");
docTotal.append(str);
...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)