0
나는 다양한 SO 질문을 점검했고, service(). spreadsheet(). values ()에서 사용할 수있는 추가 메소드가 있어야하지만 다른 SO 질문과 달리이 메소드에는이 객체가 없다는 것을 알았다. 전체 문서를 작성하는 대신 데이터를 Google 스프레드 시트에 추가하려면 어떻게해야합니까?Google 스프레드 시트에 데이터를 추가하는 방법은 무엇입니까?
이 코드는 현재 문서를 추가하는 대신 현재 문서에 쓰는 코드입니다.
public static Sheets getSheetsService() throws IOException {
Credential credential = authorize();
return new Sheets.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
.setApplicationName(APPLICATION_NAME)
.build();
}
...
public static boolean writeToPersistedGoogleDoc(List<FlightBookingRow> rows) throws IOException {
Sheets service = getSheetsService();
String valueInputOption = "USER_ENTERED";
List<List<Object>> values = new ArrayList<>();
for(FlightBookingRow row: rows){
List<Object> list = new ArrayList<>();
list.add(row.getTimeBooked());
list.add(row.getPaidStatus());
list.add(row.getCostOfTicket());
list.add(row.getFlightPlan());
list.add(row.getNumberOfPeople().toString());
list.add(row.getDepartureDate().toString());
list.add(row.getReturnDate().toString());
list.add(row.getCompanyBookedWith());
values.add(list);
}
ValueRange body = new ValueRange()
.setValues(values);
UpdateValuesResponse result =
service.spreadsheets().values().update(PERSISTED_FLIGHT_SHEET, RANGE, body)
.setValueInputOption(valueInputOption)
.execute();
System.out.printf("%d cells updated.", result.getUpdatedCells());
return true;
}