Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
powowstal
28 / 28 / 5
Регистрация: 21.03.2013
Сообщений: 346
#1

Пример работы с google docs spreadsheet. Не работает - Программирование Android

24.01.2015, 19:52. Просмотров 800. Ответов 9
Метки нет (Все метки)

Есть такой пример.
Мне нужно вытянуть данные с таблицы (желательно тянуть сразу массив рядка или столбца (и было б круто вытянуть рядки по заднанном значению)). Пока не суть.

Хочу понять почему в примере подчеркивает ошибку

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import com.google.gdata.client.spreadsheet.*;
import com.google.gdata.data.spreadsheet.*;
import com.google.gdata.util.*;
 
import java.io.IOException;
import java.net.*;
import java.util.*;
 
public class MySpreadsheetIntegration {
  public static void main(String[] args)
      throws AuthenticationException, MalformedURLException, IOException, ServiceException {
 
    SpreadsheetService service =
        new SpreadsheetService("MySpreadsheetIntegration-v1");
 
    // TODO: Authorize the service object for a specific user (see other sections)
 
    // 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();
 
    if (spreadsheets.size() == 0) {
      // TODO: There were no spreadsheets, act accordingly.
    }
 
    // TODO: Choose a spreadsheet more intelligently based on your
    // app's needs.
    SpreadsheetEntry spreadsheet = spreadsheets.get(0);
    System.out.println(spreadsheet.getTitle().getPlainText());
 
    // Get the first worksheet of the first spreadsheet.
    // TODO: Choose a worksheet more intelligently based on your
    // app's needs.
    WorksheetFeed worksheetFeed = service.getFeed(
        spreadsheet.getWorksheetFeedUrl(), WorksheetFeed.class);
    List<WorksheetEntry> worksheets = worksheetFeed.getEntries();
    WorksheetEntry worksheet = worksheets.get(0);
 
    // Fetch the list feed of the worksheet.
    URL listFeedUrl = worksheet.getListFeedUrl();
    ListFeed listFeed = service.getFeed(listFeedUrl, ListFeed.class);
 
    // Iterate through each row, printing its cell values.
    for (ListEntry row : feed.getEntries()) {
      // Print the first column's cell value
      System.out.print(row.getTitle().getPlainText() + "\t");
      // Iterate over the remaining columns, and print each cell value
      for (String tag : row.getCustomElements().getTags()) {
        System.out.print(row.getCustomElements().getValue(tag) + "\t");
      }
      System.out.println();
    }
  }
}
for (ListEntry row : feed.getEntries())
так понял не соответсвие типов? И как ее исправить?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.01.2015, 19:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Пример работы с google docs spreadsheet. Не работает (Программирование Android):

Как работать с google docs spreadsheets? - Программирование Android
Мне нужно зайти в google docs spreadsheets и получить/записать значение ячейки Я так понимаю алгоритм таков: авторизация, входим в...

Вылетает оф. пример Google - Программирование Android
Здравствуйте. Не подскажите, почему у меня вылетает (Facebook SDK). Пример находиться за адресом...

Вылетает официальный пример Google - Программирование Android
Здравствуйте. Не подскажите, почему у меня вылетает (Facebook SDK). Пример находиться за адресом...

OAuth 2.0 нужен пример для входа google документы - Программирование Android
Раньше входил с кодом service.setUserCredentials(USERNAME, PASSWORD); теперь же google пишет что прекратил поддержку такой авторизации. ...

Подходит ли C# для работы с анкетами Google Docs - C#
Есть идея написание программы для работы с анкетами Google Docs, что бы собирал данные и вел статистику. Возможна ли реализация такой...

Google API Скрипт для Google Spreadsheet - JavaScript
Здравствуйте! Прошу помочь. Есть таблица в Google Spreadsheet, таблица имеет 1 лист. Доступ к таблице имеют 10 пользователей...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
contedevel
57 / 55 / 8
Регистрация: 07.10.2012
Сообщений: 598
24.01.2015, 20:21 #2
Цитата Сообщение от powowstal Посмотреть сообщение
for (ListEntry row : feed.getEntries())
Если приведение типов возможно и ошибка в этом, то просто очень:
Java
1
for(ListEntry r: (ListEntry)feed.getEntries())
Но в цикле это плохо делать)
Если это не перечисляемый класс, то используйте цикл while или тот же for, но со счетчиком
0
powowstal
28 / 28 / 5
Регистрация: 21.03.2013
Сообщений: 346
24.01.2015, 20:25  [ТС] #3
contedevel, угу если бы все было так просто, типы не приводятся так как
Can only iterate over an array or an instance of java.lang.Iterable
0
contedevel
57 / 55 / 8
Регистрация: 07.10.2012
Сообщений: 598
24.01.2015, 20:27 #4
Цитата Сообщение от powowstal Посмотреть сообщение
Can only iterate over an array or an instance of java.lang.Iterable
Это второй пункт моего ответа
0
powowstal
28 / 28 / 5
Регистрация: 21.03.2013
Сообщений: 346
24.01.2015, 20:54  [ТС] #5
contedevel, Пред циклом сделал приведение результата нет
Java
1
2
3
ListEntry rowI = (ListEntry)feed.getEntries();
                        
            for (ListEntry row : rowI) {
0
dtx1212
6 / 6 / 1
Регистрация: 08.12.2013
Сообщений: 26
24.01.2015, 21:35 #6
contedevel, зачем вы пытаетесь привести список записей к единичной записи?
Edit:
powowstal, посмотрел документацию этого метода, он возвращает List с типом, определенным при создании фида, в данном случае это SpreadsheetEntry. Так что перебор должен выглядеть так.
Java
1
for (SpreadsheetEntry spreadsheetEntry : feed.getEntries())
0
powowstal
28 / 28 / 5
Регистрация: 21.03.2013
Сообщений: 346
24.01.2015, 21:36  [ТС] #7
dtx1212, не помогло (
0
dtx1212
6 / 6 / 1
Регистрация: 08.12.2013
Сообщений: 26
24.01.2015, 21:44 #8
powowstal, если вам нужен именно ListFeed - используйте его, а не SpreadsheetFeed
Java
1
2
ListFeed listFeed = service.getFeed(listFeedUrl, ListFeed.class);
for (ListEntry listEntry : listFeed.getEntries()){}
0
powowstal
28 / 28 / 5
Регистрация: 21.03.2013
Сообщений: 346
24.01.2015, 21:51  [ТС] #9
dtx1212, тогда нужные мне ф-и перестают функционировать, это официальный же пример от гугла, я надеялся что там все правильно
0
contedevel
57 / 55 / 8
Регистрация: 07.10.2012
Сообщений: 598
24.01.2015, 23:43 #10
Цитата Сообщение от dtx1212 Посмотреть сообщение
зачем вы пытаетесь привести список записей к единичной записи?
Честно говоря, машинально написал ListEntry...

Добавлено через 4 минуты
Цитата Сообщение от powowstal Посмотреть сообщение
Пред циклом сделал приведение результата нет
Это глупость, извините... Машинально приведение типов написал, там коллекция возвращается, так нельзя делать, вообще, при переборе это глупость, даже если бы можно было привести.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2015, 23:43
Привет! Вот еще темы с ответами:

Вывод массива для Google spreadsheet - JavaScript
Доброго времени суток! начал осваивать js надо написать скрипт для Google spreadsheet, столкнулся с такой проблемой в указанный диапазон...

Google Docs и доступ - Безопасность
Доброе время суток! Если я ошибся разделом, прошу модератора перенести тред. Товарищи, возникла следующая проблема - пользователь...

Google Docs Api - PHP
Здравствуйте. На работе возникла задача - делаю сайт для ипотечного центра - нужен калькулятор для рассчёта процентов, сумм, страховки и...

Cтранный файл в Google Docs - Софт
Доброго времени суток! Вчера на моем Google Drive мой парень обнаружил очень странный файл, я до сих пор в шоке как он вообще...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
24.01.2015, 23:43
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru