2015-05-27 75 views
0

因此,我試圖將此公開表單導出爲CSV。如何將特定的PUBLIC電子表格導出到csv

我已經學會了,我可以用下面的方式,只需在瀏覽器中(沒有被登錄到谷歌):

https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key={0}&exportFormat=csv 

這是偉大的,似乎相當簡單。但是,當我嘗試在我的應用程序中執行此操作時,似乎要我登錄。而登錄過程中,我無法開始工作。

我試過多種解決方案。使用舊AUTH方法,我好不容易纔得到這樣的工作:

var spreadsheetService = new SpreadsheetsService(name); 

      var csv = string.Empty; 
      using (var sr = new StreamReader(spreadsheetService.Query(exportUrl))) 
      { 
       csv = sr.ReadToEnd(); 
      } 

這偉大的工作,但現在證書已經被移動到OAuth,這不再是我的作品。我一直無法找到將OAuth憑據添加到此方法的方法。

所以不是我試過下面的例子中,並與像這樣結束了:

var certificate = new X509Certificate2(data, "notasecret", X509KeyStorageFlags.Exportable); 

    var credential = new ServiceAccountCredential(
     new ServiceAccountCredential.Initializer(serviceEmail) 
     { 
      Scopes = new[] { PlusService.Scope.PlusMe } 
     }.FromCertificate(certificate)); 

    credential.RequestAccessTokenAsync(System.Threading.CancellationToken.None).Wait(); 

    var service = new PlusService(new BaseClientService.Initializer() 
             { 
              HttpClientInitializer = credential, 
              ApplicationName = "My app", 
             }); 

這似乎工作,但我不知道下一步是什麼是。如何在PlusService上執行我的導出查詢?它甚至有可能嗎?相反,我可以將OAuth憑據添加到SpreadsheetService嗎?

回答

0

要下載雲端硬盤中的文件,並將其導出到CSV,您必須使用驅動器(files.get)然後調用導出鏈接。

還要檢查這個documentation瞭解更多關於從驅動器下載文件。

希望有幫助!

相關問題