C# 如何从文件加载已保存的词典?

C# 如何从文件加载已保存的词典?,c#,dictionary,streamwriter,C#,Dictionary,Streamwriter,我保存了一本字典,其中包含以下内容: using (var file = File.OpenWrite("dictionary.txt")) foreach (KeyValuePair<string, string> entry in dictionary) { streamwriter.WriteLine(entry.Key + entry.Value);

我保存了一本字典,其中包含以下内容:

 using (var file = File.OpenWrite("dictionary.txt"))
                foreach (KeyValuePair<string, string> entry in dictionary)
                {
                    streamwriter.WriteLine(entry.Key + entry.Value);
                }
使用(var file=file.OpenWrite(“dictionary.txt”))
foreach(字典中的KeyValuePair条目)
{
streamwriter.WriteLine(entry.Key+entry.Value);
}
如何重新打开此文件并将保存的数据存储回新词典

更新
回答

您需要序列化以保存它,然后反序列化以加载它

您的代码只是将每个键值对写入单独一行的文件中。这不起作用,因为两者之间没有分隔符。无法知道
部件的停止位置和
部件的开始位置。你需要一个更好的方法来序列化你的字典


有很多方法可以做到这一点,但仅举几个例子,您可以使用XML(请参阅)或JSON(请参阅)。

您需要序列化它以保存它,然后反序列化它以加载它

您的代码只是将每个键值对写入单独一行的文件中。这不起作用,因为两者之间没有分隔符。无法知道
部件的停止位置和
部件的开始位置。你需要一个更好的方法来序列化你的字典


有很多方法可以做到这一点,但仅举几个例子,您可以使用XML(请参阅)或JSON(请参阅)。

sw.WriteLine(entry.Key+entry.Value)之后搜索
serialization
您无法真正决定键结束和值开始的位置…此代码不起作用。。。变量
sw
是什么?在
sw.WriteLine(entry.Key+entry.Value)之后搜索
serialization
您无法真正决定键结束和值开始的位置…此代码不起作用。。。变量是什么?我明白了,我想我知道该怎么做了,谢谢!我明白了,我想我知道该怎么办了,谢谢!