2013-03-11 24 views
0

我救了一本字典與如下:如何從文件加載保存的字典?

using (var file = File.OpenWrite("dictionary.txt")) 
       foreach (KeyValuePair<string, string> entry in dictionary) 
       { 
        streamwriter.WriteLine(entry.Key + entry.Value); 
       } 

如何重新打開此文件,並保存的數據回存到一個新的字典嗎?

UPDATE 回答

+0

搜索'serialization' ... – I4V 2013-03-11 22:30:54

+5

'sw.WriteLine(entry.Key + entry.Value)'之後'''你真的不能決定,哪裏的鍵結束和值開始... – MarcinJuraszek 2013-03-11 22:31:23

+1

這段代碼doesn不工作......什麼是變量'sw'? – 2013-03-11 22:31:32

回答

3

你需要序列化保存它,然後反序列化加載它。

您的代碼只是將每個鍵值對寫入單獨一行中的文件。這是行不通的,因爲兩者之間沒有分隔符。無法知道Key零件停止的位置和Value零件的起始位置。你需要一個更好的序列化字典的方法。

有很多方法可以做到這一點,但僅舉幾例,您可以使用XML(請參閱this SO question)或JSON(請參閱this SO Question)。

+0

我明白了,我想我現在該知道該怎麼辦,謝謝! – Teachme 2013-03-11 22:38:12