Apps Script Advanced Drive API 服务 - newFile() 方法未创建文件
Apps Script Advanced Drive API Service - newFile() Method not Creating a File
Advanced Drive API 服务的 newFile()
方法似乎 return 一个对象,但没有在我的 Google 驱动器中创建文件。我找不到这方面的任何文件。这是我尝试过的代码,以及我得到的结果。
function makeNewDoc() {
var file = Drive.newFile();
Logger.log('file ' + file);
file = {one: "value One"};
Logger.log('file ' + file);
Logger.log("file['one'] " + file['one']);
};
日志打印如下:
file {}
file [object Object]
file['one'] value One
我尝试在 newFile()
括号内添加一个字符串:
function makeNewDoc() {
var file = Drive.newFile("some text");
Logger.log('file ' + file);
file = {one: "value One"};
Logger.log('file ' + file);
Logger.log("file['one'] " + file['one']);
for (var key in file) {
Logger.log('key: ' + key);
Logger.log('value: ' + file[key]);
};
};
这没有产生错误,但它也没有做任何事情。或者我不知道它在做什么。
我在 运行 代码多次后检查了我的 Google 驱动器很多次,我的驱动器中从来没有新文件。
newFile()
方法 return 是一个对象,我可以将新属性放入其中,然后进行枚举。但除此之外,我不知道它有什么用,也不知道它有什么用。
所以,如果有人能告诉我驱动器 API 的 newFile()
方法有什么作用,我真的很想知道。
以下是如何使用高级云端硬盘服务制作新文档的示例
function createNewDoc(title,content,folderId){
var content = content || "";
// neither kind or mimeType properties seem to be necessary
// for Doc to be created, but are being included anyhow
var resource = {
title: title,
parents: [
{
"id": folderId,
"kind": "drive#fileLink"
}
],
mimeType: 'application/vnd.google-apps.document'
};
var blob = Utilities.newBlob(content);
var newfile = Drive.Files.insert(resource, blob, {"convert":"true"});
return newFile;
}
我使用了答案代码,但在将 blob 创建为 HTML 时出现问题。下面的代码将 HTML 作为字符串转换为要插入到文档中的 blob。
var content = '<!DOCTYPE html><html><body><b>Hello</b></body><html>'
var blob = Utilities.newBlob("").setDataFromString(content,'UTF-8').setContentType("text/html")
var newfile = Drive.Files.insert(resource, blob, {"convert":"true"});
Advanced Drive API 服务的 newFile()
方法似乎 return 一个对象,但没有在我的 Google 驱动器中创建文件。我找不到这方面的任何文件。这是我尝试过的代码,以及我得到的结果。
function makeNewDoc() {
var file = Drive.newFile();
Logger.log('file ' + file);
file = {one: "value One"};
Logger.log('file ' + file);
Logger.log("file['one'] " + file['one']);
};
日志打印如下:
file {}
file [object Object]
file['one'] value One
我尝试在 newFile()
括号内添加一个字符串:
function makeNewDoc() {
var file = Drive.newFile("some text");
Logger.log('file ' + file);
file = {one: "value One"};
Logger.log('file ' + file);
Logger.log("file['one'] " + file['one']);
for (var key in file) {
Logger.log('key: ' + key);
Logger.log('value: ' + file[key]);
};
};
这没有产生错误,但它也没有做任何事情。或者我不知道它在做什么。
我在 运行 代码多次后检查了我的 Google 驱动器很多次,我的驱动器中从来没有新文件。
newFile()
方法 return 是一个对象,我可以将新属性放入其中,然后进行枚举。但除此之外,我不知道它有什么用,也不知道它有什么用。
所以,如果有人能告诉我驱动器 API 的 newFile()
方法有什么作用,我真的很想知道。
以下是如何使用高级云端硬盘服务制作新文档的示例
function createNewDoc(title,content,folderId){
var content = content || "";
// neither kind or mimeType properties seem to be necessary
// for Doc to be created, but are being included anyhow
var resource = {
title: title,
parents: [
{
"id": folderId,
"kind": "drive#fileLink"
}
],
mimeType: 'application/vnd.google-apps.document'
};
var blob = Utilities.newBlob(content);
var newfile = Drive.Files.insert(resource, blob, {"convert":"true"});
return newFile;
}
我使用了答案代码,但在将 blob 创建为 HTML 时出现问题。下面的代码将 HTML 作为字符串转换为要插入到文档中的 blob。
var content = '<!DOCTYPE html><html><body><b>Hello</b></body><html>'
var blob = Utilities.newBlob("").setDataFromString(content,'UTF-8').setContentType("text/html")
var newfile = Drive.Files.insert(resource, blob, {"convert":"true"});