2011-05-12 80 views
0

在程序中,我現在有如何將輸出保存到一個文件

process.serialize(System.out); 

這通常輸出對象「過程」到屏幕的XML格式。

但我想將這個XML格式重定向到一個保存的文件,如test.XML。如何在java中做到這一點?謝謝。

回答

2

System.out是一個PrintStream類型,所以你應該看看here。 使用PrintStream結合了File這樣的:

process.serialize(new PrintStream(new File("my file"))); 

將做的工作。

+0

您可能希望將JavaDocs鏈接更新爲比1.4.2更新的版本... – 2011-05-12 15:25:49

+0

謝謝。順便說一句,我是否必須關閉這個新創建的文件作爲我們在C中需要的內容。如果需要,請在Java中如何做到這一點? – user288609 2011-05-12 15:49:17

+0

@ user288609,我認爲最好的做法是始終明確關閉自己的流(和任何類型的資源)。這種方式可以控制何時發生,並最大限度地減少資源佔用的時間。 – 2011-05-12 15:58:46

2

這個具體是這樣

process.serialize(new PrintStream("test.xml")); 
1

我與平等和棘輪怪胎以前的答案同意,我想補充幾點:

  • 您可以瞭解更多關於不同來自Sun/Oracle的tutorial on I/O的流和文件的工作方式。
  • 通過調用流的close()方法來關閉您使用的每個流都很重要。將這些調用放在finally塊中將確保所有資源都被釋放,而不管遇到任何異常。
相關問題