Java Google电子表格API,400错误错误错误请求:无法分析范围

Java Google电子表格API,400错误错误错误请求:无法分析范围,java,google-sheets,google-api-client,Java,Google Sheets,Google Api Client,我正在尝试使用一个电子表格示例访问Google电子表格。当我运行示例代码时,它运行得很好。我只需更改电子表格ID和范围。它开始给我: Exception in thread "main" com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request { "code" : 400, "errors" : [ { "domain" : "global", "message"

我正在尝试使用一个电子表格示例访问Google电子表格。当我运行示例代码时,它运行得很好。我只需更改电子表格ID和范围。它开始给我:

Exception in thread "main" com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request
{
  "code" : 400,
  "errors" : [ {
    "domain" : "global",
    "message" : "Unable to parse range: Class Data!A2:A4",
    "reason" : "badRequest"
  } ],
  "message" : "Unable to parse range: Class Data!A2:A4",
  "status" : "INVALID_ARGUMENT"
}
    at com.google.api.client.googleapis.json.GoogleJsonResponseException.from(GoogleJsonResponseException.java:146)
    at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:113)
    at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:40)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest$1.interceptResponse(AbstractGoogleClientRequest.java:321)
    at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:1065)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:419)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:469)
    at poc.mainPOC.main(mainPOC.java:157)
代码如下:

  String spreadsheetId = "my spread sheet ID";
    String range = "Class Data!A2:A4";
    ValueRange response = service.spreadsheets().values()
        .get(spreadsheetId, range)
        .execute();

尝试替换
类数据!A2:A4
A2:A4

如果查看工作表,您会注意到工作表的标题为“类数据”。所以只要把你的工作表的名字写在“类数据”的地方就行了。例子:
String range=“SheetName!A1:C”

我试图将一些数据添加到名为
Emmett
的工作表中,但该工作表不存在,并且收到以下错误:


错误:无法分析范围:Emmet!A2:C12


我必须在电子表格中手动创建名为
Emmett
的工作表,然后它像一个符咒一样工作。

当我在选项卡名称中输入错误时,我遇到了这个错误。在您的情况下,“类数据”与选项卡的名称不匹配


类数据
是工作表的名称,仅供参考:底部选项卡上的名称,默认名称为“Sheet1”。将
类数据
替换为您想要使用的数据。

在我的例子中,当我修剪末尾的工作表名称时,google工作表中有一个额外的空间。一旦我删除了修剪逻辑,一切都很好

我了解到,如果列名还不存在,这个命令将无法找到它。你需要确保你要写的专栏已经存在——我是在谷歌的工作表中手动完成的

我想访问一个特定的电子表格,我该怎么做?ValueRange响应=service.spreadsheets().values().get(spreadsheetId,range.execute();目前,我正在使用它来获取数据。在示例中,“类数据”似乎是工作表的名称。如果没有具有该名称的工作表,则会抛出错误@HemantYadav当你说电子表格时,你是指工作表吗?如果是电子表格,则提供电子表格ID。如果它是工作表,您可以在“NameOfWorksheet!A2:A4”这样的范围内提供它,其中NameOfWorksheet是工作表的名称,包括空格。通过省略工作表的名称和感叹号,它进入第一个工作表。请您回答我的问题-->@ritesh.gargThanks a ton bro。而@zeta的解释是将许多未知的事情放在正确的角度。