Конвертировать разделенные запятыми идентификаторы пользователей Twitter в соответствующие имена - PullRequest
1 голос
/ 12 января 2012

Я занимаюсь разработкой приложения для Twitter. API Twitter Followers будет возвращать 5000 идентификаторов пользователя в виде строки, разделенной запятыми. Мне нужно вытащить отображаемое имя, число подписчиков и число подписок из userlookup API. Но этот API будет извлекать данные пользователя по 100 идентификаторов одновременно.

Может ли кто-нибудь помочь мне найти наиболее эффективный / рекомендуемый способ разбить строку через запятую на пакеты по 100 идентификаторов пользователей и получить сведения о пользователе?

Ответы [ 2 ]

1 голос
/ 12 января 2012

Вот что вы можете сделать, разделение происходит только один раз.

   string ids = "YOUR IDs";
   int limit = 100;
   List<string[]> store = new List<string[]>();
   var split = ids.Split(',');
   int counter = 0;
   while (true) {
       var batch = string.Join(",", split.Skip(counter++ * limit).Take(limit));
       if (string.IsNullOrEmpty(batch)) break;
       //Make your call here
   }
1 голос
/ 12 января 2012

Я бы использовал result.Split (","). Take (100) это разделит все это на массив и затем возьмет первые 100 результатов.Если это не выполняется достаточно быстро, вы должны вручную выполнить потоковую передачу строки, чтобы прочитать только первые 100 запятых.Это будет немного быстрее, но не так синтаксически элегантно.В первом случае вы все равно сможете обрабатывать 5000 разделенных запятыми элементов за доли секунды на любом современном компьютере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...