gpt4 book ai didi

java - twitter4j 可序列化正在保存但未加载

转载 作者:行者123 更新时间:2023-11-30 10:31:46 24 4
gpt4 key购买 nike

我想通过首先将它保存到 tweet.ser 文件然后使用 load() 方法来检索它来保存和加载我的推特提要。但是我收到一个错误:“线程“主”中的异常 java.lang.ClassCastException:twitter4j.ResponseListImpl 无法转换为 [Ltwitter4j.Status; 在 com.teamtreehouse.RealTreets.load(RealTreets.java:25) 在 Example.main(Example.java:12)"

这是我的代码:

import java.io.*;
import java.util.List;
import twitter4j.Status;

public class RealTreets{
public static void save(List<Status> status){
try(
FileOutputStream fos = new FileOutputStream("tweets.ser");
ObjectOutputStream oos = new ObjectOutputStream(fos);
) {
oos.writeObject(status);
}catch(IOException ioe) {
System.out.println("Problem saving Tweets");
ioe.printStackTrace();
}
}
public static Status[] load(){
Status[] status = new Status[0];
try(
FileInputStream fis = new FileInputStream("tweets.ser");
ObjectInputStream ois = new ObjectInputStream(fis);
){
status = (Status[]) ois.readObject();
} catch(IOException ioe){
System.out.println("Error reading file!");
ioe.printStackTrace();
} catch(ClassNotFoundException cnfe){
System.out.println("Error loading treets.");
cnfe.printStackTrace();
}
return status;
}
}

而且我已经检查过...保存工作正常。 tweets.ser 正在显示数据。 load() 方法中存在问题。

最佳答案

您正在保存 List<Status>到一个文件,但随后试图将其读取为 Status[] .这些不是一回事,因此失败。

您需要更改保存方式或阅读方式,以便它们彼此一致。

关于java - twitter4j 可序列化正在保存但未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43025872/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com