アクセスGoogleスプレッドシート付のC#ですデータをAPI
質問
私有の情報をGoogleスプレッドシートとしてシングルシートです。がある方が広がっていくに違いないでこの情報を読んで下さい。純提供により、googleの資格は、表計算アドレスです。ことはできますデータのApiを用意しています。最終的にはさんからの情報GoogleトにDataTable.する方法を教えてくださいね。もしもしたので、plsシェアす。
解決
これらのusingステートメントを追加します:
using Google.GData.Client;
using Google.GData.Extensions;
using Google.GData.Spreadsheets;
認証:
SpreadsheetsService myService = new SpreadsheetsService("exampleCo-exampleApp-1");
myService.setUserCredentials("jo@gmail.com", "mypassword");
スプレッドシートのリストを取得します:
SpreadsheetQuery query = new SpreadsheetQuery();
SpreadsheetFeed feed = myService.Query(query);
Console.WriteLine("Your spreadsheets: ");
foreach (SpreadsheetEntry entry in feed.Entries)
{
Console.WriteLine(entry.Title.Text);
}
次のようにあなたはすでに取得してきたSpreadsheetEntryを考えると、あなたはこのスプレッドシート内のすべてのワークシートのリストを取得することができます:
AtomLink link = entry.Links.FindService(GDataSpreadsheetsNameTable.WorksheetRel, null);
WorksheetQuery query = new WorksheetQuery(link.HRef.ToString());
WorksheetFeed feed = service.Query(query);
foreach (WorksheetEntry worksheet in feed.Entries)
{
Console.WriteLine(worksheet.Title.Text);
}
とセルベースのフィードを取得します:
AtomLink cellFeedLink = worksheetentry.Links.FindService(GDataSpreadsheetsNameTable.CellRel, null);
CellQuery query = new CellQuery(cellFeedLink.HRef.ToString());
CellFeed feed = service.Query(query);
Console.WriteLine("Cells in this worksheet:");
foreach (CellEntry curCell in feed.Entries)
{
Console.WriteLine("Row {0}, column {1}: {2}", curCell.Cell.Row,
curCell.Cell.Column, curCell.Cell.Value);
}
他のヒント
私は周りの単純なラッパーを書きました Googleの.NETクライアントライブラリに、それはstrongly-で、単純なデータベースのようなインターフェースを公開入力されたレコードタイプ。ここではいくつかのサンプルコードがあります:
public class Entity {
public int IntProp { get; set; }
public string StringProp { get; set; }
}
var e1 = new Entity { IntProp = 2 };
var e2 = new Entity { StringProp = "hello" };
var client = new DatabaseClient("you@gmail.com", "password");
const string dbName = "IntegrationTests";
Console.WriteLine("Opening or creating database");
db = client.GetDatabase(dbName) ?? client.CreateDatabase(dbName); // databases are spreadsheets
const string tableName = "IntegrationTests";
Console.WriteLine("Opening or creating table");
table = db.GetTable<Entity>(tableName) ?? db.CreateTable<Entity>(tableName); // tables are worksheets
table.DeleteAll();
table.Add(e1);
table.Add(e2);
var r1 = table.Get(1);
Googleの構造化クエリ演算子に変換LINQプロバイダもありますのます:
var q = from r in table.AsQueryable()
where r.IntProp > -1000 && r.StringProp == "hello"
orderby r.IntProp
select r;
月-月-2016年) の質問とその答えは時として:1) GData Api は、前世代のGoogleのApiを用意しています。ないもののすべてのGData Apiして推奨されていません, すべての最新のGoogle Api い ない 使用 Googleのデータプロトコル;2)あ 新GoogleシートAPI v4 (もしないGData).
今後はこちらからですので、ま GoogleのApiライブラリです。当期純 の最 シートAPI, るのではなくパワフルで柔軟性に富んだり提供されます。この C#のコードサンプル へのお問い合わせください。プロジェクト .純参考docsのシートAPI の .純Google Apiライブラリ開発者ガイド.
いない場合はアレルギーへのPythonの場合は、ふりこの擬似コード;))、複数の動画を少し長くなると、"実"の事例APIの使用お問い合わせはこちらまでおよび移C#希望の場合:
- 移動SQLデータシート (コードでは深くクライアントのビジネ ポスト)
- フォーマット文字のシートAPI (コードでは深くクライアントのビジネ ポスト)
- 発生スライドからの表計算データ (コードでは深くクライアントのビジネ ポスト)
まいまい方:
Googleの表計算シートC#図書館(Tacoman667の解答)を取得すListFeedでのリストを返し行(ListEntry Googleに特有の用語)のリストの名前と値のペアになっています。Googleトーhttp://code.google.com/apis/spreadsheets/code.html)文書による十分な情報を取得します。
Googleの可視化APIきの提出をより洗練されたほとんどのようなSQL)クエリの取得のみを行/カラムがあります。
スプレッドシートの内容として返されAtomフィード利にご利用いただけますXPathまたはSAX構文解析を抽出の内容の一覧です。あえてこのようになっております(JavaとJavascriptのみのもんじゃ) http://gqlx.twyst.co.za.
私は、このためにはGoogle Code上でいくつかのC#SDKに/ツールキットがありますかなり確信しています。私はこの1 のを見つけたが、それは周りのブラウズを持つ価値があるので、他の人があるかもしれませんます。
http://code.google.com/apis/gdata/articles /dotnet_client_lib.htmlする
これは、あなたが始める必要があります。私は最近、それをプレイしていないが、私はしばらく前に非常に古いバージョンをダウンロードし、それはかなり固体に見えました。この1つはそのドキュメントをチェックアウトするだけでなくのVisual Studio 2008に更新された!
マルコスPlaconaにより2017年3月24日に作られたこのTwilioのブログのページが役に立つかもしれません。
これは、参照する Google.Api.Sheets.v4 とのOAuth2するます。