2016-09-25 503 views
2

試着用Go寫一個簡單的三列表([][]string),但不行。 quick start指南非常好,我現在可以閱讀工作表,但是沒有任何如何將數據寫入工作表的示例,也許這很簡單,但對我來說似乎不是。 我的大腦的Golang library太複雜了。 還有沒有隻舉一個例子,我可以谷歌...Golang google sheets API V4 - 寫入/更新示例?

C# example看起來非常接近,但我不知道一些選拔賽後嗯,我清楚地瞭解C#

回答

5

,有一個答案。一切都與https://developers.google.com/sheets/quickstart/go一樣只是主要功能的變化

func write() { 
    ctx := context.Background() 
    b, err := ioutil.ReadFile("./Google_Sheets_API_Quickstart/client_secret.json") 
    if err != nil { 
     log.Fatalf("Unable to read client secret file: %v", err) 
    } 

// If modifying these scopes, delete your previously saved credentials 
// at ~/.credentials/sheets.googleapis.com-go-quickstart.json 
    config, err := google.ConfigFromJSON(b, "https://www.googleapis.com/auth/spreadsheets") 
    if err != nil { 
     log.Fatalf("Unable to parse client secret file to config: %v", err) 
    } 
    client := getClient(ctx, config) 

    srv, err := sheets.New(client) 
    if err != nil { 
     log.Fatalf("Unable to retrieve Sheets Client %v", err) 
    } 

    spreadsheetId := "YOUR SPREADSHEET ID" 

    writeRange := "A1" 

    var vr sheets.ValueRange 

    myval := []interface{}{"One", "Two", "Three"} 
    vr.Values = append(vr.Values, myval) 

    _, err = srv.Spreadsheets.Values.Update(spreadsheetId, writeRange, &vr).ValueInputOption("RAW").Do() 
    if err != nil { 
     log.Fatalf("Unable to retrieve data from sheet. %v", err) 
    } 

} 
相關問題