如何删除通过测试创建的电子表格?

时间:2018-12-26 18:01:48

标签: spring-boot google-sheets-api

我拥有Java Google Api客户端的最新版本。我可以成功进行身份验证并创建电子表格。

如何删除每次JUNIT测试后创建的电子表格。

我希望能够使用api删除电子表格

1 个答案:

答案 0 :(得分:0)

这里没有什么可以告诉您是否需要多个作用域的。如果您打算使用相同的流程执行任何电子表格操作,则可以。 驱动操作使用DriveScopes.DRIVE. 但是,如果您只想读取文件列表,则只需要Drive作用域即可。 所以:

final NetHttpTransport HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport();
Drive service = new Drive.Builder(HTTP_TRANSPORT, JSON_FACTORY, getCredentials(HTTP_TRANSPORT))
    .setApplicationName(APPLICATION_NAME).build();

// parse through the retrieved list of files to find a match with the name you gave the
// sheet. Since you can create multiple sheets with the same name, I parse the entire
// and delete all the files with that name. 

FileList result = service
    .files()
    .list()
    .setPageSize(100)
    .setFields("nextPageToken, files(id, name)")
    .execute();

List<File> files = result.getFiles();

for (File file : files) {
    if (file.getName().trim().compareTo(getTitle().trim()) == 0) {
        Delete d = fileService.files().delete(file.getId());
        d.execute();
    }
}