我正在尝试开发一个Java程序,该程序将从Google云端硬盘中检索文件,然后尝试“按原样”重新上传。但是,在此过程中,它会丢失格式。
这是我检索文件的方式:
private static java.io.File downloadFile(File uploadedFile)
throws IOException {
java.io.File downloadedFile = new java.io.File(parentDir, uploadedFile.getTitle() + UUID.randomUUID().toString());
try (OutputStream out = new FileOutputStream(downloadedFile)) {
drive.files().export(uploadedFile.getId(), "text/html").executeMediaAndDownloadTo(out);
}
return downloadedFile;
}
这是我更新文件的方式:
private static File updateFile(Drive service, String fileId, File file, java.io.File newContent) throws IOException {
FileContent mediaContent = new FileContent("text/html", newContent);
return service.files().update(fileId, file, mediaContent).execute();
}
这是我将这些方法(漂亮的假人)组合在一起的方法:
java.io.File downloaded = downloadFile(files.get(0));
updateFile(drive, files.get(0).getId(), files.get(0), downloaded);
当我将Google文件导出并重新导入为RTF或PDF时,此过程很好,但是我确实需要可编辑的格式。我错过了什么吗?
答案 0 :(得分:0)
这是预期的结果。 PDF是确保保留格式的一种方法。对于Google文档来说,就不那么多了。