我有一個保存數據到外部文件
List<MyCustomClass> mcc = new List<MyCustomClass>();
當程序運行時,它從用戶的基礎上,其組裝表收集數據。 我想存儲數據,以便下次運行程序時,它會記住。
我想總結一下,我有什麼方法可以做到這一點?
- 與StreamWriter我可以將文本保存到「file.txt」。
- 我聽說過有關保存到XML文件的選項。
- 數據庫:我沒有經驗,他們還
是否有其他的選擇嗎? 對於這個特定的原因,你會推薦哪一個,爲什麼?
我有一個保存數據到外部文件
List<MyCustomClass> mcc = new List<MyCustomClass>();
當程序運行時,它從用戶的基礎上,其組裝表收集數據。 我想存儲數據,以便下次運行程序時,它會記住。
我想總結一下,我有什麼方法可以做到這一點?
是否有其他的選擇嗎? 對於這個特定的原因,你會推薦哪一個,爲什麼?
我會用一個數據庫肯定的,但如果這是一個程序爲單個用戶的小應用程序,我會用兩種:
或文檔存儲數據庫(沒有SQL)
隨着RavenDB你可以把你的MyCustomClass
對象拖放IT方面直接進入這個存儲並將其重新取出。
在大多數情況下,您應該將其保存到數據庫中。數據庫用於存儲,更重要的是檢索數據。
如果將它保存到文本文件中,您將負責格式化數據,然後編寫更多代碼來檢索它。如果您需要將新屬性添加到MyCustomClass,該怎麼辦?
使用XML對它進行序列化並將其寫入文本會更好,因爲格式化是爲您完成的,但您仍然存在稍後檢索它的問題。如果您有1000條記錄並需要獲得記錄#495,該怎麼辦?您將不得不閱讀整個文本文件,可能會將所有文本序列化回您的對象並搜索記錄。非常慢。
數據庫解決了這一切爲你。如果它是一個小應用程序,甚至有數據庫是正常的文件!對於較大的項目,您將需要一個集中的數據庫,所以你絕對應該給它一個去
我會保存到基於文件的數據庫。嘗試SQL Server Compact! – Tico