【问题标题】:Quote retweets Twitter4j引用转推 Twitter4j
【发布时间】:2013-07-15 19:07:20
【问题描述】:

我在使用 twitter4j 时遇到问题,当我使用此代码获取时间线时:

try {
    ResponseList<Status> tweets = twitter.getHomeTimeline();
    for(Status s : tweets){
        Tweet temp = new Tweet(new URL(s.getUser().getProfileImageURL()),s.getUser().getName(),"@"+s.getUser().getScreenName() , s.getText());
        tweetsPanel.add(temp);
    }
} catch (TwitterException | MalformedURLException e) {
    e.printStackTrace();
}

(Tweet 是本地类)除了时间轴中的转推显示为“Quote Retweet”外,一切正常:

RT @SOMEONE : the tweet.

我希望它像网站一样,只是普通的转发。

【问题讨论】:

标签: java android twitter twitter4j


【解决方案1】:

在 twitter4j 上,转推以格式显示

RT @user:推文

因为 rt 是文本的实际形式。如果你在 twitter 上发布一条具有相同格式的推文,它将被解析为来自 twitter 本身的正常转发。

您可以编辑它的唯一方法是解析文本并手动消除第一部分。 尝试类似:

String tweetText = "";
String [] splitted=s.getText().split(":");
if(splitted.lenght>2)
for (int i=1;i<splitted.lenght-1;i++)
{
  tweetText+=splitted[i]+":";
}
tweetText+=splitted[splitted.lenght-1];
return tweetText;

通过在 i=1 上启动 for,您将避免添加包含 RT @user 的第一个拆分,通过添加 splitted[i]+":" 您将放回推文中出现的最终其他“:” split 否则将消除。当然你不想引入一个不存在的“:”,所以最后一段 splitted 在 for 之外,没有 +“:”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-11
    • 2015-08-10
    • 2021-04-11
    • 1970-01-01
    • 2017-10-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多