2017-12-05 1 views
0

Ich habe verschiedene SO-Fragen überprüft, und ich sehe, dass es eine append-Methode für service() .tabletle(). Values ​​() geben sollte, aber diese Methode existiert für mich im Gegensatz zu anderen SO-Fragen nicht. Wie füge ich Daten an eine Google-Tabelle an, anstatt das gesamte Dokument zu schreiben?Wie fügt man Daten an eine Google-Tabelle an?

Dies ist der Code, den ich verwende, der über das aktuelle Dokument schreibt, anstatt an es anzufügen.

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; 
    } 

Antwort

0

Ich hatte eine etwas veraltete Abhängigkeit in meiner Pom-Datei.

Ich habe dies hinzugefügt, und dann habe ich Zugriff auf die Append-Methode.

<dependency> 
    <groupId>com.google.apis</groupId> 
    <artifactId>google-api-services-sheets</artifactId> 
    <version>v4-rev494-1.23.0</version> 
</dependency> 
Verwandte Themen