Google Spreadsheet Java API:来自CellEntry的网址?

时间:2013-10-20 15:45:15

标签: java google-docs-api google-spreadsheet-api

我正在使用Java来阅读Google电子表格。用户可以选择某些单元,然后可以更新那些单元,但是在它们之间可以关闭程序。

因此,我希望将电子表格单元格的唯一URL存储到磁盘,以便稍后在程序重新启动时更新该电子表格单元格。有没有办法从CellEntry获取唯一的URL?

我知道这样做的唯一方法是获取单元格的行&列:

int row = cell.getCell().getRow();
int col = cell.getCell().getCol();

然后在查询具有最小/最大行/列的单元格中使用它:

URL cellFeedUrl = new URI(worksheetFeed.getCellFeedUrl().toString()
+ "?min-row="
+ Integer.toString(row)
+ "&max-row="
+ Integer.toString(row)
    + "&max-col="
    + Integer.toString(col))
+ "&min-col="
+ Integer.toString(col)).toURL();
CellFeed cellFeed = spreadsheetService.getFeed(cellFeedUrl, CellFeed.class);

但这似乎有点疯狂,因为当我有一个单元格输入时,我不应该再次搜索它。妄想?

1 个答案:

答案 0 :(得分:2)

快速批量更新解决方案:What is the fastest way to update a google spreadsheet with a lot of data through the spreadsheet api?

另请参阅 CellDemo.java http://gdata-java-client.googlecode.com/svn-history/r51/trunk/java/sample/spreadsheet/cell/CellDemo.java

它表明您可以通过这种方式进行更新:

CellEntry newEntry = new CellEntry(row, col, formulaOrValue);
service.insert(cellFeedUrl, newEntry);