Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(C) Google Sheets - Create a New SpreadsheetDemonstrates how to create a new and empty spreadsheet.
#include <C_CkJsonObject.h> #include <C_CkHttp.h> #include <C_CkHttpResponse.h> void ChilkatSample(void) { HCkJsonObject jsonToken; BOOL success; HCkHttp http; HCkJsonObject json; HCkHttpResponse resp; int i; int count_i; const char *spreadsheetId; const char *propertiesTitle; const char *propertiesLocale; const char *propertiesAutoRecalc; const char *propertiesTimeZone; int propertiesDefaultFormatBackgroundColorRed; int propertiesDefaultFormatBackgroundColorGreen; int propertiesDefaultFormatBackgroundColorBlue; int propertiesDefaultFormatPaddingTop; int propertiesDefaultFormatPaddingRight; int propertiesDefaultFormatPaddingBottom; int propertiesDefaultFormatPaddingLeft; const char *propertiesDefaultFormatVerticalAlignment; const char *propertiesDefaultFormatWrapStrategy; const char *propertiesDefaultFormatTextFormatFontFamily; int propertiesDefaultFormatTextFormatFontSize; BOOL propertiesDefaultFormatTextFormatBold; BOOL propertiesDefaultFormatTextFormatItalic; BOOL propertiesDefaultFormatTextFormatStrikethrough; BOOL propertiesDefaultFormatTextFormatUnderline; const char *spreadsheetUrl; int propertiesSheetId; int propertiesIndex; const char *propertiesSheetType; int propertiesGridPropertiesRowCount; int propertiesGridPropertiesColumnCount; // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // This example uses a previously obtained access token having permission for the // Google Sheets scope. // In this example, Get Google Sheets OAuth2 Access Token, the access // token was saved to a JSON file. This example fetches the access token from the file.. jsonToken = CkJsonObject_Create(); success = CkJsonObject_LoadFile(jsonToken,"qa_data/tokens/googleSheets.json"); if (CkJsonObject_HasMember(jsonToken,"access_token") == FALSE) { printf("No access token found.\n"); CkJsonObject_Dispose(jsonToken); return; } http = CkHttp_Create(); CkHttp_putAuthToken(http,CkJsonObject_stringOf(jsonToken,"access_token")); // Create the following JSON: // The JSON code can be generated using this online tool: Generate JSON create code // { // "sheets": [ // { // "properties": { // "title": "Sample Tab" // } // } // ], // "properties": { // "title": "Create Spreadsheet using Sheets API v4" // } // } // This code generates the above JSON: json = CkJsonObject_Create(); CkJsonObject_UpdateString(json,"sheets[0].properties.title","Sample Tab"); CkJsonObject_UpdateString(json,"properties.title","Create Spreadsheet using Sheets API v4"); // Send the POST to create the new Google spreadsheet. resp = CkHttp_PostJson3(http,"https://sheets.googleapis.com/v4/spreadsheets","application/json",json); if (CkHttp_getLastMethodSuccess(http) != TRUE) { printf("%s\n",CkHttp_lastErrorText(http)); CkJsonObject_Dispose(jsonToken); CkHttp_Dispose(http); CkJsonObject_Dispose(json); return; } printf("response status code = %d\n",CkHttpResponse_getStatusCode(resp)); printf("response JSON:\n"); CkJsonObject_Load(json,CkHttpResponse_bodyStr(resp)); CkJsonObject_putEmitCompact(json,FALSE); printf("%s\n",CkJsonObject_emit(json)); CkHttpResponse_Dispose(resp); // A sample response is shown below. // To generate the parsing source code for a JSON response, paste // the JSON into this online tool: Generate JSON parsing code // { // "spreadsheetId": "1ueEQu3WDBkIAOUhzLnY4zr6JO5SrJx0dQ-YkQlUVYD0", // "properties": { // "title": "Create Spreadsheet using Sheets API v4", // "locale": "en_US", // "autoRecalc": "ON_CHANGE", // "timeZone": "Etc/GMT", // "defaultFormat": { // "backgroundColor": { // "red": 1, // "green": 1, // "blue": 1 // }, // "padding": { // "top": 2, // "right": 3, // "bottom": 2, // "left": 3 // }, // "verticalAlignment": "BOTTOM", // "wrapStrategy": "OVERFLOW_CELL", // "textFormat": { // "foregroundColor": {}, // "fontFamily": "arial,sans,sans-serif", // "fontSize": 10, // "bold": false, // "italic": false, // "strikethrough": false, // "underline": false // } // } // }, // "sheets": [ // { // "properties": { // "sheetId": 1629642057, // "title": "Sample Tab", // "index": 0, // "sheetType": "GRID", // "gridProperties": { // "rowCount": 1000, // "columnCount": 26 // } // } // } // ], // "spreadsheetUrl": "https://docs.google.com/spreadsheets/d/1ueEQu3WDBkIAOUhzLnY4zr6JO5SrJx0dQ-YkQlUVYD0/edit" // } // spreadsheetId = CkJsonObject_stringOf(json,"spreadsheetId"); propertiesTitle = CkJsonObject_stringOf(json,"properties.title"); propertiesLocale = CkJsonObject_stringOf(json,"properties.locale"); propertiesAutoRecalc = CkJsonObject_stringOf(json,"properties.autoRecalc"); propertiesTimeZone = CkJsonObject_stringOf(json,"properties.timeZone"); propertiesDefaultFormatBackgroundColorRed = CkJsonObject_IntOf(json,"properties.defaultFormat.backgroundColor.red"); propertiesDefaultFormatBackgroundColorGreen = CkJsonObject_IntOf(json,"properties.defaultFormat.backgroundColor.green"); propertiesDefaultFormatBackgroundColorBlue = CkJsonObject_IntOf(json,"properties.defaultFormat.backgroundColor.blue"); propertiesDefaultFormatPaddingTop = CkJsonObject_IntOf(json,"properties.defaultFormat.padding.top"); propertiesDefaultFormatPaddingRight = CkJsonObject_IntOf(json,"properties.defaultFormat.padding.right"); propertiesDefaultFormatPaddingBottom = CkJsonObject_IntOf(json,"properties.defaultFormat.padding.bottom"); propertiesDefaultFormatPaddingLeft = CkJsonObject_IntOf(json,"properties.defaultFormat.padding.left"); propertiesDefaultFormatVerticalAlignment = CkJsonObject_stringOf(json,"properties.defaultFormat.verticalAlignment"); propertiesDefaultFormatWrapStrategy = CkJsonObject_stringOf(json,"properties.defaultFormat.wrapStrategy"); propertiesDefaultFormatTextFormatFontFamily = CkJsonObject_stringOf(json,"properties.defaultFormat.textFormat.fontFamily"); propertiesDefaultFormatTextFormatFontSize = CkJsonObject_IntOf(json,"properties.defaultFormat.textFormat.fontSize"); propertiesDefaultFormatTextFormatBold = CkJsonObject_BoolOf(json,"properties.defaultFormat.textFormat.bold"); propertiesDefaultFormatTextFormatItalic = CkJsonObject_BoolOf(json,"properties.defaultFormat.textFormat.italic"); propertiesDefaultFormatTextFormatStrikethrough = CkJsonObject_BoolOf(json,"properties.defaultFormat.textFormat.strikethrough"); propertiesDefaultFormatTextFormatUnderline = CkJsonObject_BoolOf(json,"properties.defaultFormat.textFormat.underline"); spreadsheetUrl = CkJsonObject_stringOf(json,"spreadsheetUrl"); i = 0; count_i = CkJsonObject_SizeOfArray(json,"sheets"); while ((i < count_i)) { CkJsonObject_putI(json,i); propertiesSheetId = CkJsonObject_IntOf(json,"sheets[i].properties.sheetId"); propertiesTitle = CkJsonObject_stringOf(json,"sheets[i].properties.title"); propertiesIndex = CkJsonObject_IntOf(json,"sheets[i].properties.index"); propertiesSheetType = CkJsonObject_stringOf(json,"sheets[i].properties.sheetType"); propertiesGridPropertiesRowCount = CkJsonObject_IntOf(json,"sheets[i].properties.gridProperties.rowCount"); propertiesGridPropertiesColumnCount = CkJsonObject_IntOf(json,"sheets[i].properties.gridProperties.columnCount"); i = i + 1; } CkJsonObject_Dispose(jsonToken); CkHttp_Dispose(http); CkJsonObject_Dispose(json); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.