java - 在 Google Drive + Java中,使用Google电子表格API创建电子表格

  显示原文与译文双语对照的内容

I Developer 我已经在 Google Drive API的现有电子表格中成功创建了一个新工作表,但我想用Java代码在我的Google Drive帐户中创建一个全新的电子表格表。 在提到的链接中,他们没有提到任何示例代码。 我浏览过许多链接,但不知道如何做? 我已经在Spreadservice类中看到了不同的方法。

我不了解如何使用Google电子表格 API?


/*


 * To change this template, choose Tools | Templates


 * and open the template in the editor.


 */



import com.google.gdata.client.spreadsheet.*;


import com.google.gdata.data.Link;


import com.google.gdata.data.PlainTextConstruct;


import com.google.gdata.data.TextConstruct;


import com.google.gdata.data.docs.ExportFormat;


import com.google.gdata.data.spreadsheet.*;


import com.google.gdata.util.*;



import java.io.IOException;


import java.net.*;


import java.util.*;


import javax.xml.soap.Text;



/**


 *


 * @author satyam


 */


 public class SpreadSheet {



 public static void main(String[] args)


 throws AuthenticationException, MalformedURLException, IOException, ServiceException {



 SpreadsheetService service = new SpreadsheetService("gBuddy");



//TODO: Authorize the service object for a specific user (see other sections)


 String USERNAME ="USERNAME";


 String PASSWORD ="PASSWORD";



 service.setUserCredentials(USERNAME, PASSWORD);



//Define the URL to request. This should never change.


 URL SPREADSHEET_FEED_URL = new URL(


"https://spreadsheets.google.com/feeds/spreadsheets/private/full");



//Make a request to the API and get all spreadsheets.


 SpreadsheetFeed feed = service.getFeed(SPREADSHEET_FEED_URL, SpreadsheetFeed.class);


 List<SpreadsheetEntry> spreadsheets = feed.getEntries();



//Iterate through all of the spreadsheets returned


 for (SpreadsheetEntry spreadsheet : spreadsheets) {


//Print the title of this spreadsheet to the screen;


 System.out.println(spreadsheet.getTitle().getPlainText());


 }



 SpreadsheetEntry spreadsheet = spreadsheets.get(1);


//System.out.println(spreadsheet.getTitle().getPlainText());



////Create a local representation of the new worksheet.


 WorksheetEntry worksheet = new WorksheetEntry();


 worksheet.setTitle(new PlainTextConstruct("New Worksheet"));


 worksheet.setColCount(10);


 worksheet.setRowCount(20);



//Send the local representation of the worksheet to the API for


//creation. The URL to use here is the worksheet feed URL of our


//spreadsheet.


 URL worksheetFeedUrl = spreadsheet.getWorksheetFeedUrl();


 WorksheetEntry insert = service.insert(worksheetFeedUrl, worksheet);


 }


 }



时间: 原作者:

经过一些研究我发现这个答案很简单。 我们无法在 Google drive中创建一个新的电子表格,的Google电子表格 API 。

注意:我们可以通过Google电子表格API创建已经存在的Google硬盘电子表格,但不能使用电子表格API创建新电子表格。

For我们要使用 Google Drive api创建和上传新的电子表格或者任何其他类型的文档,我们必须使用 Google Drive api 。

这就是我要找的。 通过这个,我们可以使用 google drive api在 google drive中创建一个新的电子表格。


 DocsService docsService = new DocsService("MySampleApplication-v3");


 docsService.setUserCredentials(USERNAME, PASSWORD);


 URL GOOGLE_DRIVE_FEED_URL = new URL("https://docs.google.com/feeds/default/private/full/");


 DocumentListEntry documentListEntry = new com.google.gdata.data.docs.SpreadsheetEntry();


 documentListEntry.setTitle(new PlainTextConstruct("Spreadsheet_name"));


 documentListEntry = docsService.insert(GOOGLE_DRIVE_FEED_URL, documentListEntry);



为创建新的电子表格,我们必须创建 new SpreadsheetEntry() 对象,并对它的他任何文档创建 new DocumentEntry() 对象。

如果我们必须在 google drive中上传任何类型的文档( xls 。doc 。图像等),我们可以这样做


//File upload in google drive


 DocumentListEntry uploadFile = new DocumentListEntry();


 uploadFile.setTitle(new PlainTextConstruct("FILE_NAME_DISPLAY_IN_DRIVE"));


 uploadFile.setFile(new File("FILE_PATH"),"MIME_TYPE_OF_FILE");


 uploadFile = docsService.insert(GOOGLE_DRIVE_FEED_URL, uploadFile);



原作者:

你应该使用文档列表 API 来创建新的speadsheets 。

这个API能做什么?

Google文档列表API允许开发人员创建。检索。更新和 delete Google Docs ( 包括但不限于文本文档。电子表格。演示文稿和绘图) 。文件和集合。 它还提供了一些高级特性,如资源归档。光学字符识别。翻译和修订历史。

原作者:
...