2013-01-20 192 views
4

我一直在嘗試將純文本文件保存到Android上Google雲端硬盤中的特定文件夾中。將文件保存在Google Drive SDK的特定文件夾中

到目前爲止使用我已經能夠做到在正確的方向去的幾件事情在谷歌雲端硬盤中的文件和QuickStart Guide,首先,我能創造一個純文本文件:

File body = new File(); 
    body.setTitle(fileContent.getName()); 
    body.setMimeType("text/plain"); 
    File file = service.files().insert(body, textContent).execute(); 

我已經能夠在谷歌Drive大道的根目錄創建一個新的文件夾:

File body = new File(); 
    body.setTitle("Air Note"); 
    body.setMimeType("application/vnd.google-apps.folder"); 
    File file = service.files().insert(body).execute(); 

我也一直能與列出的所有文件夾在用戶的谷歌雲端硬盤帳戶:

 List<File> files = service.files().list().setQ("mimeType = 'application/vnd.google-apps.folder'").execute().getItems(); 
     for (File f : files) { 
      System.out.println(f.getTitle() + ", " + f.getMimeType()); 
     } 

但是,我有點卡住如何將文本文件保存到Google雲端硬盤中的文件夾。

回答

7

您需要使用父參數將文件放入使用插入的文件夾中。在https://developers.google.com/drive/v2/reference/files/insert

更多的東西的細節,如該

File body = new File(); 
body.setTitle(fileContent.getName()); 
body.setMimeType("text/plain"); 
body.setParents(Arrays.asList(new File.ParentReference().setId(parentId)); 
File file = service.files().insert(body, textContent).execute(); 
+0

工作就像一個魅力,非常感謝你! =) – Gatekeeper

+0

你如何獲得「parentId」的保留? –

+0

如果你知道你要去哪裏商店,它幾乎直截了當 – the100rabh

1

如果要插入的特定文件夾的文件,在谷歌驅動器,然後按照這些步驟。讓我們假設,我們已經檢索到的所有文件夾從驅動器,現在我將輸入在列表中的第一個文件夾中的空文件,所以

  //Getting Folders from the DRIVE 
List<File> files = mService.files().list().setQ("mimeType = 'application/vnd.google-apps.folder'").execute().getItems(); 

    File f =files.get(1)//getting first file from the folder list 
    body.setTitle("MyEmptyFile"); 
    body.setMimeType("image/jpeg"); 
    body.setParents(Arrays.asList(new ParentReference().setId(f.getId()))); 
    com.google.api.services.drive.model.File file = mService.files().insert(body).execute(); 

現在,這將創建的文件夾中的空文件,該文件是在頂部在檢索文件列表中。

1

第一步:創建一個文件夾

File body1 = new File(); 
body1.setTitle("cloudbox"); 
body1.setMimeType("application/vnd.google-apps.folder"); 
File file1 = service.files().insert(body1).execute(); 

步驟2:將您的文件

File body2 = new File(); 
body2.setTitle(fileContent.getName()); 
body2.setMimeType("text/plain"); 
body2.setParents(Arrays.asList(new ParentReference().setId(file1.getId()))); 
File file2 = service.files().insert(body2, mediaContent).execute(); 
相關問題