0

可能重复:
如何删除 System.out.println() 打印到控制台的内容?

我有一个 Pickle 类,可以序列化单词和单词计数的链接列表。一切正常,除了当我保存和加载数据时控制台不清除。即使我离开 Eclipse 并再次运行该程序,旧的控制台输出也会与新的输出一起出现。无论如何在加载对象数据之前清除控制台?这是我的保存方法:

void save(T obj){
    try{
        FileOutputStream fos = new FileOutputStream(filename);
        ObjectOutputStream out = new ObjectOutputStream(fos);
        out.writeObject(obj);
        out.close();
    }catch(Exception e){
        System.err.println(e);
        System.exit(1);
    }
}

和我的加载方法:

T load(){
    try{
        FileInputStream fis = new FileInputStream(filename);
        ObjectInputStream in = new ObjectInputStream(fis);
        temp = (T) in.readObject();
        return temp;
    }catch(FileNotFoundException f){
        System.err.println("Warning! File Not Found. Null is returned");
        System.exit(1);
        return null;
    } catch (Exception e) {
        System.err.println(e);
        System.exit(1);
        return null;
    }
}
4

1 回答 1

0

我以前遇到过这个问题。这真是太棒了。我可以通过使用一个名为 JLine http://jline.sourceforge.net/的免费/开源库来做到这一点。它是一个非常好的库,并且支持 Unix 和 Windows 终端,包括输入密码。它还有一个“clearScreen()”方法来清除屏幕。

我建议您使用 JLine 并查看它是否适合您的需求。我可以向您保证,它是一个不错的库,我相信您会发现它的其他功能很有用。

于 2012-06-10T19:55:37.233 回答