documentos - Guarde el archivo en una carpeta específica con Google Drive SDK Java
google drive para desarrolladores (1)
Agrega una carpeta principal para un archivo.
private static ParentReference insertFileIntoFolder(Drive service, String folderId,
String fileId) {
ParentReference newParent = new ParentReference();
newParent.setId(folderId);
try {
return service.parents().insert(fileId, newParent).execute();
} catch (IOException e) {
System.out.println("An error occurred: " + e);
}
return null;
}
Ver
Como no se me permitió preguntar en el hilo relevante Guardar archivo en una carpeta específica con Google Drive SDK
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();
El archivo. ".ParentReference ()" me está dando un problema ¿qué me estoy perdiendo?
Mi código actual que no se cargará en la carpeta XXX
HttpTransport httpTransport = new NetHttpTransport();
JsonFactory jsonFactory = new JacksonFactory();
GoogleTokenResponse response = flow.newTokenRequest(code).setRedirectUri(REDIRECT_URI).execute();
GoogleCredential credential = new GoogleCredential().setFromTokenResponse(response);
// Create a new authorized API client
Drive service = new Drive.Builder(httpTransport, jsonFactory, credential).build();
ParentReference newParent = new ParentReference();
newParent.setId("XXX");
// Insert a file
File body = new File();
body.setTitle(fileID);
body.setDescription(fileID);
body.setMimeType("text/plain");
body.setParents(Arrays.asList(newParent));
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());
}
java.io.File fileContent = new java.io.File(fileID);
FileContent mediaContent = new FileContent("text/plain", fileContent);
File file = service.files().insert(body, mediaContent).execute();
System.out.println("File ID: " + file.getId());