创建和管理文档
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
此 Google Docs API 页面介绍了如何执行涉及 Google 文档的某些高级别任务,例如:
以下段落将详细介绍这些任务。
创建空白文档
如需创建文档,请对 documents
集合使用 documents.create
方法。
以下代码示例展示了如何创建具有指定标题的空白文档:
Java
private static void createDoc(Docs service) throws IOException {
Document doc = new Document()
.setTitle("My Document");
doc = service.documents().create(doc)
.execute();
System.out.println("Created document with title: " + doc.getTitle());
}
PHP
$title = 'My Document';
$document = new Google_Service_Docs_Document(array(
'title' => $title
));
$document = $service->documents->create($document);
printf("Created document with title: %s\n", $document->title);
Python
title = 'My Document'
body = {
'title': title
}
doc = service.documents() \
.create(body=body).execute()
print('Created document with title: {0}'.format(
doc.get('title')))
处理 Google 云端硬盘文件夹
无法使用 Google 文档 API 直接在指定的云端硬盘文件夹中创建文档。默认情况下,创建的文档会保存到用户在云端硬盘中的根文件夹。
不过,您还可以通过以下两种方式将文件保存到云端硬盘文件夹:
无论选择哪种替代方案,您都需要添加相应的 Drive API 范围来授权调用。如需详细了解云端硬盘范围,请参阅选择 Google Drive API 范围。
如需在共享云端硬盘文件夹中移动或创建文件,请参阅实现共享云端硬盘支持。
复制现有文档
如需复制文档,请使用 Drive API 的 files.copy
方法。
以下代码示例展示了如何复制现有文档。您可以在文档网址中找到用于 Drive API 调用的 ID。如需了解详情,请参阅文档 ID。
https://docs.google.com/document/d/DOCUMENT_ID/edit
Java
String copyTitle = "Copy Title";
File copyMetadata = new File().setName(copyTitle);
File documentCopyFile =
driveService.files().copy(documentId, copyMetadata).execute();
String documentCopyId = documentCopyFile.getId();
Node.js
var copyTitle = "Copy Title";
let request = {
name: copyTitle,
};
this.driveService.files.copy({
fileId: documentId,
resource: request,
}, (err, driveResponse) => {
let documentCopyId = driveResponse.id;
});
PHP
<?php
$copyTitle = 'Copy Title';
$copy = new Google_Service_Drive_DriveFile(array(
'name' => $copyTitle
));
$driveResponse = $driveService->files->copy($documentId, $copy);
$documentCopyId = $driveResponse->id;
Python
copy_title = 'Copy Title'
body = {
'name': copy_title
}
drive_response = drive_service.files().copy(
fileId=document_id, body=body).execute()
document_copy_id = drive_response.get('id')
请注意,您需要使用适当的 Drive API 范围来授权调用。如需详细了解云端硬盘范围,请参阅选择 Google Drive API 范围。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-08-29。
[null,null,["最后更新时间 (UTC):2025-08-29。"],[],[],null,["# Create and manage documents\n\nThis Google Docs API page describes how to perform certain high-level tasks\ninvolving Google Docs documents, such as:\n\n- Create a document\n- Copy an existing document\n\nThe following paragraphs describe these tasks in detail.\n\nCreate a blank document\n-----------------------\n\nTo create a document, use the\n[`documents.create`](/workspace/docs/api/reference/rest/v1/documents/create) method on the\n[`documents`](/workspace/docs/api/reference/rest/v1/documents) collection.\n\nThe following code sample shows how to create a blank document with a specified\ntitle: \n\n### Java\n\n\n```java\nprivate static void createDoc(Docs service) throws IOException {\n Document doc = new Document()\n .setTitle(\"My Document\");\n doc = service.documents().create(doc)\n .execute();\n System.out.println(\"Created document with title: \" + doc.getTitle());\n}\n```\n\n\u003cbr /\u003e\n\n### PHP\n\n\n```php\n$title = 'My Document';\n$document = new Google_Service_Docs_Document(array(\n 'title' =\u003e $title\n));\n\n$document = $service-\u003edocuments-\u003ecreate($document);\nprintf(\"Created document with title: %s\\n\", $document-\u003etitle);\n```\n\n\u003cbr /\u003e\n\n### Python\n\n\n```python\ntitle = 'My Document'\nbody = {\n 'title': title\n}\ndoc = service.documents() \\\n .create(body=body).execute()\nprint('Created document with title: {0}'.format(\n doc.get('title')))\n```\n\n\u003cbr /\u003e\n\n### Work with Google Drive folders\n\nThere's no option to create a document directly within a specified\nDrive folder using the Docs API. By default, the\ncreated document is saved to the user's root folder on Drive.\n\nHowever, there are two alternatives to saving a file to a Drive\nfolder:\n\n- After the document is created, move it to a specific folder using\n Drive API's\n [`files.update`](/workspace/drive/api/v3/reference/files/update) method. For\n more information on moving files, see [Move files between\n folders](/workspace/drive/api/guides/folder#move-files).\n\n- Add a blank document to a folder using the Drive API's\n [`files.create`](/workspace/drive/api/v3/reference/files/create) method,\n specifying `application/vnd.google-apps.document` as the `mimeType`. For\n more information on creating files, see [Create a file in a specific\n folder](/workspace/drive/api/guides/folder#create-file).\n\nFor either alternative, you'll need to add the appropriate [Drive API\nscopes](/workspace/drive/api/v3/reference/files/create#authorization-scopes) to\nauthorize the call. For more information on Drive scopes, see\n[Choose Google Drive API scopes](/workspace/drive/api/guides/api-specific-auth).\n\nTo move or create a file within a shared drive folder, see [Implement shared\ndrive support](/workspace/drive/api/guides/enable-shareddrives).\n\nCopy an existing document\n-------------------------\n\nTo copy a document, use Drive API's\n[`files.copy`](/workspace/drive/v3/reference/files/copy) method.\n\nThe following code sample shows how to copy an existing document. You can find\nthe ID to use for the Drive API call in the document URL. For more\ninformation, see\n[Document ID](/workspace/docs/api/concepts/document#document-id). \n\n https://docs.google.com/document/d/\u003cvar translate=\"no\"\u003eDOCUMENT_ID\u003c/var\u003e/edit\n\n### Java\n\n\n```java\nString copyTitle = \"Copy Title\";\nFile copyMetadata = new File().setName(copyTitle);\nFile documentCopyFile =\n driveService.files().copy(documentId, copyMetadata).execute();\nString documentCopyId = documentCopyFile.getId();\n```\n\n\u003cbr /\u003e\n\n### Node.js\n\n\n```javascript\nvar copyTitle = \"Copy Title\";\nlet request = {\n name: copyTitle,\n};\nthis.driveService.files.copy({\n fileId: documentId,\n resource: request,\n}, (err, driveResponse) =\u003e {\n let documentCopyId = driveResponse.id;\n});\n```\n\n\u003cbr /\u003e\n\n### PHP\n\n\n```php\n\u003c?php\n$copyTitle = 'Copy Title';\n$copy = new Google_Service_Drive_DriveFile(array(\n 'name' =\u003e $copyTitle\n));\n$driveResponse = $driveService-\u003efiles-\u003ecopy($documentId, $copy);\n$documentCopyId = $driveResponse-\u003eid;\n```\n\n\u003cbr /\u003e\n\n### Python\n\n\n```python\ncopy_title = 'Copy Title'\nbody = {\n 'name': copy_title\n}\ndrive_response = drive_service.files().copy(\n fileId=document_id, body=body).execute()\ndocument_copy_id = drive_response.get('id')\n```\n\n\u003cbr /\u003e\n\nNote that you need to use an appropriate [Drive API\nscope](/workspace/drive/v3/reference/files/copy#authorization-scopes)\nto authorize the call. For more information on Drive scopes, see\n[Choose Google Drive API scopes](/workspace/drive/api/guides/api-specific-auth).\n\nRelated topics\n--------------\n\n- [Insert, delete, and move text](/workspace/docs/api/how-tos/move-text)\n- [Merge text into a document](/workspace/docs/api/how-tos/merge)\n- [Document concepts](/workspace/docs/api/concepts/document)"]]