2016-01-20 3 views
0

Почему file.getParents всегда возвращает значение null? Как я могу получить идентификатор папки, где находится файл?file.getParents return null (привод Google)

import com.google.api.services.drive.model.File; 
import com.google.api.services.drive.model.FileList; 

FileList result = null; 
try { 
    result = service.files().list().execute(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 
List<File> files = result.getFiles(); 
if (files == null || files.size() == 0) { 
    System.out.println("No files found."); 
} else { 
    for (File file : files) { 
     System.out.println(file.getName()); 
     System.out.println(file.getParents()); 
    } 
} 
+0

Нет метода 'getParents()' для файла. Метод 'getParent()'; который возвращает строку pathname этого родительского абстрактного pathname или null, если этот путь не указывает родительский каталог. Приложите к документации здесь https://docs.oracle.com/javase/7/docs/api/java/io/File.html#getParent() –

+0

@BalwinderSingh Объектом «Файл» является файл Google Диска, а не объект java-файла – nightlytrails

ответ

1

Возможно, вы используете последнюю версию v3 apis. Заметные изменения в v3 включают в себя:

Полный ресурс больше не возвращается по умолчанию. Используйте запрос полей , чтобы запросить определенные поля для возврата. Если осталось , то не указывается только подмножество обычно используемых полей.

Чтение - Migrate to Google Drive API v3

service.files().list().setFields("files(id, name, parents)").execute()

работал для меня.

Смежные вопросы