2011-09-26 66 views
-1

我的代码是:使用Jtwitter的用户功能问题

  List<Status> list = new ArrayList<Status>(); 
    User user; 
    Twitter twitter = new Twitter();  
    list = twitter.search(string); 

    for(int i=0; i<list.size();i++){ 
     user=list.get(i).getUser(); 
     System.out.print(i+1); 
     System.out.println(list.get(i)); 
     System.out.println(list.get(i).getId()); 
     System.out.println(list.get(i).getUser()); 
     System.out.println(user.getId()); 
     System.out.println(user.getCreatedAt()); 
     System.out.println(user.getLocation()); 
     System.out.println(user.getFavoritesCount()); 
    } 

问题在于打印状态,状态和用户的ID,但是用户功能如何将用户ID,位置等打印为null。我能做些什么来拍摄这些功能????

感谢您的回复

+4

我试着回答你的问题,但找不到问号,或者是一个构成问题的句子。我很抱歉。 –

+0

请发布您的用户类 –

+0

不知道'user.get ***()'方法的代码,我们无法知道它们为什么返回null。 – BenCole

回答

0

按照JTwitter API Docs,调用默认的构造函数没有用户创建一个新的实例。您需要使用Twitter.IHttpClient(取决于Signpost)与Twitter进行身份验证以获取用户数据。

0

Twitter的搜索方法的问题在于它只返回的用户信息的一小部分不寻常的。这是来自Twitter &的限制,你无能为力。

领域,如位置将是空白。

你总是得到屏幕的名称,这可以用来获取通过show()方法的额外的信息。例如。

Twitter twitter; 
List<String> userNames; // make this list from user.screenName 
List<User> fullUserInfo = twitter.users().show(userNames) 

如果你有JTwitter的一个上最新副本(http://www.winterwell.com/software/jtwitter.php)它是所有在Javadoc。

注:其他方法有时返回用户丢失的领域,如果Twitter正经历着沉重的负担。