如何从Google电子表格中读取Android应用的数据

时间:2010-09-16 22:46:01

标签: android html google-sheets

我有一个公开的谷歌电子表格,其中有一些数据在表格中。

我正在开发一款Android应用,我希望它能够阅读这些表格,然后使用电子表格中的字段制作列表视图。

哪种方法最好?

2 个答案:

答案 0 :(得分:2)

您可以使用James Moore的代码:http://blog.restphone.com/2011/05/very-simple-google-spreadsheet-code.html

package com.banshee;

import java.io.IOException;
import java.net.URL;

import com.google.gdata.client.spreadsheet.SpreadsheetService;
import com.google.gdata.data.spreadsheet.CustomElementCollection;
import com.google.gdata.data.spreadsheet.ListEntry;
import com.google.gdata.data.spreadsheet.ListFeed;
import com.google.gdata.util.ServiceException;

public class SpreadsheetSucker {
  public static void main(String[] args) {
    SpreadsheetService service = new SpreadsheetService("com.banshee");
    try {
      // Notice that the url ends
      // with default/public/values.
      // That wasn't obvious (at least to me)
      // from the documentation.
      String urlString = "https://spreadsheets.google.com/feeds/list/0AsaDhyyXNaFSdDJ2VUxtVGVWN1Yza1loU1RPVVU3OFE/default/public/values";

      // turn the string into a URL
      URL url = new URL(urlString);

      // You could substitute a cell feed here in place of
      // the list feed
      ListFeed feed = service.getFeed(url, ListFeed.class);

      for (ListEntry entry : feed.getEntries()) {
        CustomElementCollection elements = entry.getCustomElements();
        String name = elements.getValue("name");
        System.out.println(name);
        String number = elements.getValue("Number");
        System.out.println(number);
      }
    } catch (IOException e) {
      e.printStackTrace();
    } catch (ServiceException e) {
      e.printStackTrace();
    }

  }
}

答案 1 :(得分:1)

我为SpreadSheet开发了一个适用于Android的客户端Lib。请试试- http://code.google.com/p/google-spreadsheet-lib-android/

希望它有所帮助。

干杯, Prasanta