2012-06-10 125 views
0

可能重複:
How to delete stuff printed to console by System.out.println()?清除控制檯的Java

我有一個序列化詞與詞計數的鏈表一類泡菜。一切正常,除了控制檯在我保存和加載數據時沒有清除。即使當我離開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; 
    } 
} 
+0

什麼控制檯?你的意思是錯誤流? –

+0

我應該說標準輸出(System.out) – nh0815

回答

0

我以前碰到這個問題來了。這是一個相當愚蠢的。我能夠通過使用名爲JLine的免費/開源庫來實現它http://jline.sourceforge.net/這是一個相當不錯的庫,它支持Unix和Windows終端,包括輸入密碼。它還有一個「clearScreen()」方法來清除屏幕。

我建議你使用JLine,看它是否符合你的需求。我可以向你保證它是一個很好的庫,我相信你會發現它的其他功能很有用。