2012-10-23 35 views
2

我已經使用Delphi超過10年了,現在對使用Eclipse和Java感興趣。使用Delphi,我已經開發了代碼,無論有多少個表單,文本框,複選框和其他設置用戶首選項的方法,我都可以使用任何應用程序開發代碼,我可以使用一行代碼保存和加載默認值以保存並加載一個任何我開發的新應用程序。將用戶首選項保存/加載到文件中

使用Java gui,我已經設法以編程方式收集所有用戶界面GUI組件的列表,但沒有設法使用ObjectInputStream來加載使用ObjectOutputStream保存的設置。有兩個問題(到目前爲止):

  1. ObjectInputStream.ReadObject()需要對正在加載的類進行類型轉換。有沒有辦法做到這一點,直到運行時才知道類?
  2. ObjectInputStream.ReadObject()似乎會產生一個對象的新實例,我不知道如何將數據讀入現有組件(JTextField(s)等)。

是的,我承認我是新手! 感謝您的幫助。

+2

爲什麼不''java.util.Preferences'? – trashgod

+3

這似乎最好的辦法不是序列化文本區域和複選框等組件,而是像字符串和布爾值。如果可以這種方式呈現選擇,我會推薦一個'Properties'文件,否則會推薦XML(作爲其中一種選擇)。或者,正如@trashgod提到的 - 'Preferences'(很多選擇,包括特定於[Java Web Start](http://stackoverflow.com/tags/java-web-start/info)!) –

+0

我以爲序列化,可能可以避免編寫代碼來保存每種類型gui組件所需的屬性。 –

回答