Fizer Khan
Fizer Khan

Reputation: 92725

Create folder if it does not exist in the Google Drive

My Application works with Google Drive Java API.

I want to create folder in the root of the Google Drive only if it does not exist. I am using below code to creat folder.

  file = service.files().insert(body).execute();

How do i check the folder existance in the root folder. I have only the folder name 'Myapp', not the instance ID.

Upvotes: 10

Views: 14270

Answers (2)

Deepak Jha
Deepak Jha

Reputation: 81

Files.List request=service().files().list().setQ(
                   "mimeType='application/vnd.google-apps.folder' and trashed=false and name='"+folderName+"'");
        FileList files = request.execute();

Above line of code is used to get the list of all the files/folder with given name. If files are empty, it means files or the folder with given name doesn't exist and you can create a new folder with below mentioned line of code:

File fileMetadata = new File();
        fileMetadata.setName(folderName);
        fileMetadata.setMimeType("application/vnd.google-apps.folder");

        File file = service().files().create(fileMetadata)
            .setFields("id")
            .execute();

Upvotes: 3

iixi
iixi

Reputation: 580

Files.List request = service.files().list().setQ(
       "mimeType='application/vnd.google-apps.folder' and trashed=false");
FileList files = request.execute();

You could now go through all folders in "files" and check if any of the folders have the searched title.

Don't forget to loop through all pages with:

request.setPageToken(files.getNextPageToken());

Edit:

Maybe you could have a look at this site. You can add the title in your search criteria instead so you do not have to retrieve all the folders.

Upvotes: 13

Related Questions