0
我需要使用Google Drive Api for Java將文檔內容複製到另一個文件中,這兩個文件都存儲在Google Drive中。我可以上傳或下載文件,但我不知道如何將文件的內容直接傳輸到另一個文件中。我想過類似的東西:在Google Drive api中複製文檔內容
public void copyContent(String sourceId, String destinationId) {
File sourceFile = service.files().get(sourceId).execute();
AbstractInputStreamContent content = null; //sourceFile.getContent()??? :-(
File destinationFile = service.files().get(destinationId).execute();
service.files().update(destinationId, destinationFile, content).execute();
}
有一種方法可以將文件內容獲取爲AbstractInputStreamContent?或者也許它存在另一種複製內容的方法?我需要一個解決方案,無需導出/上傳文件,因爲我注意到一些轉換問題。謝謝!
嗨克勞迪奧,非常感謝你的回答。我知道copy()方法,但它將創建一個帶有新ID的新文件。我想維護舊的id(在我的例子中是「destinationId」),因爲我的應用程序在很多地方都提到它。也許我可以設置由copy()創建的新文件的id並刪除「目標文件」? – user1756508
你不能設置ID,所以我想你必須下載源文件並使用其內容更新目標文件。 –
下載文檔意味着我應該使用支持的格式(例如.odt)導出它。對?然後,當我上傳文件時,它將被重新轉換爲「Google文檔」。不幸的是,我已經有了這個過程的經驗,我注意到有一些問題將文件重新轉換爲「Google文檔」(例如,彩色表格邊框變爲黑色)。是否可以直接使用「google文檔」格式下載文檔:application/vnd.google-apps.document? – user1756508