【发布时间】:2017-04-12 13:03:51
【问题描述】:
我正在尝试使用 Twitter4j 从 Twitter API 流式传输推文并保存它们。
public class TwitterStreaming{
private static int count;
private static PrintWriter writer;
private static PrintWriter writer2;
在主函数中:
TwitterStreaming.writer = new PrintWriter("FF8Json.txt", "UTF-8");
TwitterStreaming.writer2 =new PrintWriter("FF8.txt", "UTF-8");
TwitterStreaming.count=0;
//writer.println("hello :)");
//writer2.println("Check 123");
StatusListener listener;
listener = new StatusListener() {
@Override
public void onStatus(Status status) {
TwitterStreaming.writer.println(DataObjectFactory.getRawJSON(status));
TwitterStreaming.writer2.println(status.getLang()+" - "+status.getText());
TwitterStreaming.count++;
System.out.println("Count - "+TwitterStreaming.count);
//To change the body of generated methods, choose Tools | Templates.
}
//Other Override functions are removed over here
};
FF8Json.txt 和 FF8.txt 都将是empty。 我尝试创建一个函数并将数据发送给它,并尝试通过该函数将数据写入文件。但它不起作用。 我该如何解决这个问题?有没有其他方法可以将数据写入文件?
但是当我使用 System.out.println 而不是 TwitterStreaming.writer 时它可以工作。
HERE 上的完整代码
【问题讨论】:
-
你有什么异常吗?您是否覆盖了其他方法,例如 onTrackLimitationNotice()?您在搜索哪些关键字?
-
我已经覆盖了其他方法,并且在运行时我没有收到任何异常或错误
-
如果我在我的系统中运行您的代码,我会收到以下异常:java.lang.IllegalStateException: 显然 jsonStoreEnabled 未设置为 true。
-
我添加了 jsonStoreEnabled(true) 并尝试了它。还是不行