Google云端硬盘导出非谷歌文档文件

时间:2017-09-19 14:02:21

标签: java google-drive-api

我正在尝试使用以下代码从Google云端硬盘导出多个文件:

String str = "application/rft";
OutputStream outputStream = new ByteArrayOutputStream();
driveService.files().export(fileId, str).executeAndDownloadTo(outputStream);

并且工作正常但是,当我尝试导出application/pdfapplication/pngapplication/jpeg文件时,我收到此错误:

403 Forbidden
{
  "code" : 403,
  "errors" : [ {
    "domain" : "global",
    "message" : "Export only supports Google Docs.",
    "reason" : "fileNotExportable"
  } ],
  "message" : "Export only supports Google Docs."
}

我想知道是否有办法使用Java获取此文件的内容

提前致谢

1 个答案:

答案 0 :(得分:3)

Google文档可以使用files.export下载。但是当它下载除Google Docs之外的文件(pdf,png和jpeg)时,请使用files().get()

您可以在here查看详细信息。您还可以看到示例脚本。

编辑:

这是用于下载除Google文档以外的文件的示例脚本。

String fileId = "### file ID ###";
OutputStream out = new FileOutputStream("### output filename ###");
driveService.files().get(fileId).executeMediaAndDownloadTo(out);