我正在使用他们的Java客户端库从Google云端硬盘下载文件,并且我一次只尝试下载文件的一部分。我试过像这样设置范围标题
Drive.Files.Get file = drive.files().get(fileId);
file.getRequestHeaders().setRange(String.format("bytes=%s-%s", byteRangeStart, byteRangeEnd));
file.executeMediaAndDownloadTo(oStream);
但它仍会下载整个文件。我发现我可以做到
Drive.Files.Get file = drive.files().get(fileId);
file.getMediaHttpDownloader().setBytesDownloaded(byteRangeStart);
file.executeMediaAndDownloadTo(oStream);
而是在以后正确地开始下载,但仍然下载到文件的末尾。 最后我尝试使用
file.getMediaHttpDownloader().setContentRange(byteRangeStart, (int) byteRangeEnd);
有一个双重问题,即不工作,第二个参数是一个整数,出于某种奇怪的原因。
任何帮助将不胜感激!