Чтение.xlsx с помощью Google Drive API
Я пытаюсь прочитать файлы.xlsx с помощью Google Drive API, однако после того, как я успешно открыл файл и решил прочитать содержимое, в нем отображаются значения мусора. Я могу прочитать метаданные и проверил, что правильный файл был открыт. Вот что вызывается после успешного чтения файла. Он работает с файлами.txt, но я получаю значения мусора с любыми файлами.word,.xlsx.
private ResultCallback<DriveApi.DriveContentsResult> driveContentsCallback =
new ResultCallback<DriveApi.DriveContentsResult>() {
@Override
public void onResult(DriveApi.DriveContentsResult result) {
if (!result.getStatus().isSuccess()) {
Log.i(TAG, "Error while opening the file contents");
return;
}
Log.i(TAG, "File contents opened");
mProgressBar.setProgress(100);
DriveContents contents = result.getDriveContents();
BufferedReader reader = new BufferedReader(new InputStreamReader(contents.getInputStream()));
StringBuilder builder = new StringBuilder();
String line;
try {
while ((line = reader.readLine()) != null) {
builder.append(line);
}
} catch (Exception e) {
}
String contentsAsString = builder.toString();
mTextViewContent.setText(contentsAsString);
}
};
1 ответ
С помощью Google Drive API загрузка документов Google осуществляется путем экспорта вашего файла в поддерживаемый тип MIME.
Но, если вы используете Google Drive Android API, при открытии содержимого файла
Чтобы иметь возможность прочитать файл, вы должны начать с открытия его
DriveContents
ресурс вDriveFile.MODE_READ_ONLY
или жеDriveFile.MODE_READ_WRITE
режим, в зависимости от того, предпочитаете ли вы работать сInputStream
или жеParcelFileDescriptor
учебный класс.
Вы можете проверить данную документацию для получения более подробной информации и этой публикации на GitHub.