C#通过Google API写入Google Sheets单元格

2023-11-08 23:30

本文主要是介绍C#通过Google API写入Google Sheets单元格,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 创建Google APIs项目

访问Google API控制台,点创建项目
在这里插入图片描述
比如项目名称叫“Google Sheets API TEST”
在这里插入图片描述

2. 启用API和服务

确保在“Google Sheets API TEST”项目下,点“启用API和服务”
在这里插入图片描述
找到并选择“Google Sheets API”
在这里插入图片描述

3. 创建凭据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
把私钥名字改成“Google Sheets API TEST.json”,回头好用些

4. 创建Google Sheets

新建Google Sheets,比如叫“Google api test”。记下ID,回头代码里要用,这里是10lYeKozl1aR1EXf-Q0Vw2rf7oDnAFN4Rs9eB5iVR3fI
在这里插入图片描述
打开Google Sheets API TEST.json,找到client_email:
在这里插入图片描述
共享“Google api test”,给serviceeditor@circular-unity-278004.iam.gserviceaccount.com编辑权限

把工作表名改为Sheet1,回头代码里要用
在这里插入图片描述

5. 创建解决方案

在VS2017创建控制台应用,解决方案叫GSAPITEST

通过NuGet安装Google API包
在这里插入图片描述
使用命令
PM> Install-Package Google.Apis.Sheets.v4

添加Visual C#类,GoogleSheetsHelper.cs,代码如下

using Google.Apis.Auth.OAuth2;
using Google.Apis.Sheets.v4;
using Google.Apis.Sheets.v4.Data;
using Google.Apis.Services;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Dynamic;namespace GoogleSheetsHelper
{public class GoogleSheetsHelper{static string[] Scopes = { SheetsService.Scope.Spreadsheets };static string ApplicationName = "GoogleSheetsHelper";private readonly SheetsService _sheetsService;private readonly string _spreadsheetId;public GoogleSheetsHelper(string credentialFileName, string spreadsheetId){var credential = GoogleCredential.FromStream(new FileStream(credentialFileName, FileMode.Open)).CreateScoped(Scopes);_sheetsService = new SheetsService(new BaseClientService.Initializer(){HttpClientInitializer = credential,ApplicationName = ApplicationName,});_spreadsheetId = spreadsheetId;}public List<ExpandoObject> GetDataFromSheet(GoogleSheetParameters googleSheetParameters){googleSheetParameters = MakeGoogleSheetDataRangeColumnsZeroBased(googleSheetParameters);var range = $"{googleSheetParameters.SheetName}!{GetColumnName(googleSheetParameters.RangeColumnStart)}{googleSheetParameters.RangeRowStart}:{GetColumnName(googleSheetParameters.RangeColumnEnd)}{googleSheetParameters.RangeRowEnd}";SpreadsheetsResource.ValuesResource.GetReque

这篇关于C#通过Google API写入Google Sheets单元格的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/373062

相关文章

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.

使用Python删除Excel中的行列和单元格示例详解

《使用Python删除Excel中的行列和单元格示例详解》在处理Excel数据时,删除不需要的行、列或单元格是一项常见且必要的操作,本文将使用Python脚本实现对Excel表格的高效自动化处理,感兴... 目录开发环境准备使用 python 删除 Excphpel 表格中的行删除特定行删除空白行删除含指定

C#读写文本文件的多种方式详解

《C#读写文本文件的多种方式详解》这篇文章主要为大家详细介绍了C#中各种常用的文件读写方式,包括文本文件,二进制文件、CSV文件、JSON文件等,有需要的小伙伴可以参考一下... 目录一、文本文件读写1. 使用 File 类的静态方法2. 使用 StreamReader 和 StreamWriter二、二进

C#中Guid类使用小结

《C#中Guid类使用小结》本文主要介绍了C#中Guid类用于生成和操作128位的唯一标识符,用于数据库主键及分布式系统,支持通过NewGuid、Parse等方法生成,感兴趣的可以了解一下... 目录前言一、什么是 Guid二、生成 Guid1. 使用 Guid.NewGuid() 方法2. 从字符串创建

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3

C#如何去掉文件夹或文件名非法字符

《C#如何去掉文件夹或文件名非法字符》:本文主要介绍C#如何去掉文件夹或文件名非法字符的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#去掉文件夹或文件名非法字符net类库提供了非法字符的数组这里还有个小窍门总结C#去掉文件夹或文件名非法字符实现有输入字

C#之List集合去重复对象的实现方法

《C#之List集合去重复对象的实现方法》:本文主要介绍C#之List集合去重复对象的实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C# List集合去重复对象方法1、测试数据2、测试数据3、知识点补充总结C# List集合去重复对象方法1、测试数据

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.