Google 驱动 getMimeType 只返回空值
Google drive getMimeType returning only null values
我正在尝试使用 java 中 Google 驱动器 api 的版本 3 从驱动器下载文件。我现在需要文件的 MimeType 来识别它们的内容类型。
当我尝试调用
File.getMimeType
我得到的是空值。
Drive service=getDriveService();
FileList result = service.files().list()
.setPageSize(100)
.setFields("nextPageToken, files(id, name)")
.execute();
List<File> files = result.getFiles();
if (files == null || files.size() == 0) {
System.out.println("No files found.");
}
else {
System.out.println("Files:");
for (File file : files) {
System.out.printf("%s (%s)(%s)\n", file.getName(),file.getId(),file.getMimeType());
}
}
我尝试调用其他方法,如 getFullFileExtension,但它们都返回空值。
谁能告诉我哪里做错了?
以及如何解决这个获取 mimetype 和其他值。
我还没有玩过 v3,但是从你的代码中你可以
setFields("nextPageToken, files(id, name)")
然后
file.getMimeType()
由于您只要求获取 ID 和名称,因此 mimeType 为 null 不足为奇。尝试将 mimeType
添加到 setFields
中的字段。
我正在尝试使用 java 中 Google 驱动器 api 的版本 3 从驱动器下载文件。我现在需要文件的 MimeType 来识别它们的内容类型。 当我尝试调用
File.getMimeType
我得到的是空值。
Drive service=getDriveService();
FileList result = service.files().list()
.setPageSize(100)
.setFields("nextPageToken, files(id, name)")
.execute();
List<File> files = result.getFiles();
if (files == null || files.size() == 0) {
System.out.println("No files found.");
}
else {
System.out.println("Files:");
for (File file : files) {
System.out.printf("%s (%s)(%s)\n", file.getName(),file.getId(),file.getMimeType());
}
}
我尝试调用其他方法,如 getFullFileExtension,但它们都返回空值。
谁能告诉我哪里做错了? 以及如何解决这个获取 mimetype 和其他值。
我还没有玩过 v3,但是从你的代码中你可以
setFields("nextPageToken, files(id, name)")
然后
file.getMimeType()
由于您只要求获取 ID 和名称,因此 mimeType 为 null 不足为奇。尝试将 mimeType
添加到 setFields
中的字段。