Java getKey()返回一个前面有';电子表格%3A';

Java getKey()返回一个前面有';电子表格%3A';,java,google-api,google-sheets,google-spreadsheet-api,Java,Google Api,Google Sheets,Google Spreadsheet Api,我使用GoogleSpreadsheet API将文档从一个帐户复制到另一个帐户,然后我想返回新创建的电子表格的密钥 复制是通过检索模板电子表格来完成的,创建一个带有SpreadsheetEntry newDoc=new SpreadsheetEntry()的新电子表格然后将新文件的id设置到模板电子表格newDoc.setId(template.getId())。然后插入新的电子表格 newDoc=service.insert(新URL(“https://docs.google.com/fee

我使用GoogleSpreadsheet API将文档从一个帐户复制到另一个帐户,然后我想返回新创建的电子表格的密钥

复制是通过检索模板电子表格来完成的,创建一个带有
SpreadsheetEntry newDoc=new SpreadsheetEntry()的新电子表格
然后将新文件的
id
设置到模板电子表格
newDoc.setId(template.getId())。然后插入新的电子表格

newDoc=service.insert(新URL(“https://docs.google.com/feeds/default/private/full"(新文件),

我想返回给调用方两件事:链接到新创建的电子表格及其键。 我通过
newDoc.getSpreadsheetLink().getHref()获得第一个
并返回
https://docs.google.com/a/bridgeworks.nl/spreadsheet/ccc?key=0Asl_Vu_YG4J-dDc5NHpwTFVRZFNiVENnRUxOb21XLVE

然后我调用
newDoc.getKey()并返回
电子表格%3A0Asl_Vu_YG4J-ddc5nhpwtfrvrzfnivennruxob21xlve

该键前面似乎有
电子表格%3A
。但是为什么呢?我能安全地取下它并只归还钥匙吗

如果我使用

URL worksheetur=urlFactory.getWorksheetFeedUrl(“0Asl_Vu_YG4J-ddc5nhpwtfrvrzfnivennrux21xlve”、“private”、“full”)

它成功了,但是

URL worksheetur=urlFactory.getWorksheetFeedUrl(“电子表格%3A0Asl_Vu_YG4J-ddc5nhpwtfrvrzfnivennrux21xlve”、“专用”、“完整”)


失败

文档列表API定义了两种类型的ID:资源ID和非类型化资源ID。前者的格式为[type]:[ID],而后者仅为[ID]:

您可以安全地从类型化资源ID中删除[type]部分,以获得非类型化部分