私の最終目標は、週末に1つの特定のGoogleスプレッドシートをローカルハードドライブにダウンロードする簡単なプログラムを作成することです。ファイルは他の人によって週ごとに編集されます。データを引き出して自分が書いたbashスクリプトに渡すには、常に更新されたバージョンをダウンロードする必要があります。現在、これを手動で行っていますが、スプレッドシートをcsv形式でプルダウンできれば、プロセス全体を自動化できます。
Googleのドキュメントに少し混乱しています。サンプルメソッドをコピーしましdownloadFile
たが、渡される正確なパラメーターとそのInputStream
戻り値についてはまだ不明です。
メソッドを呼び出すためにメインメソッドを追加する場合downloadFile
、渡すパラメーターの例は何になりますか。
次に、返されるストリームを使用してInputPut
、ファイルをcsv形式で保存できますか?
また、これは私が必要とする唯一の方法ですか、それとももっとありますか?
downloadFile
メソッドはここで定義されます(インポートステートメントは省略):
private static InputStream downloadFile (Drive service, File file) {
if (file.getDownloadUrl() !=null && file.getDownloadUrl().length() > 0) {
try {
HttpResponse resp = service.getRequestFactory().buildGetRequest(new GenericUrl(file.getDownloadUrl())).execute();
return resp.getContent();
}
catch (IOException e) {
e.printStackTrace();
return null;
}
}
else {
return null;
}
}