CodeGo.net>如何反序列化,然后将数据放入表格?
作者:互联网
目标
我目前有一种保存信息的有效方法
然后,我希望程序在退出后单击“加载”按钮来加载保存的状态.
然后,我希望程序将数据显示在适当的位置
在表单中,我有两个DataGridView,一个用于雇员,另一个用于主管.
================================================= ===========
方法
我已经将两个通用列表序列化为一个.dat文件
BinaryFormatter bFormatter = new BinaryFormatter();
using (FileStream fs = new FileStream(FILENAME, FileMode.OpenOrCreate))
{
bFormatter.Serialize(fs, employees);
bFormatter.Serialize(fs, supervisors);
}
到目前为止,在.dat文件中,我有3名员工和2名主管,并且我不确定如何提取信息并将其放置在适当的位置
列表如下:
List<Employee> employees = new List<Employee>();
List<Supervisor> supervisors = new List<Supervisor>();
Employee e1 = new Employee(MemberJob.Employee, "Name", MemberSkills.CPlus | MemberSkills.CSharp, false);
Supervisor s1 = new Supervisor(MemberJob.Supervisor, "Another name", false);
employees.Add(e1);
supervisors.Add(s1);
================================================== =======================
尝试
我已经在Internet和Stackoverflow上进行了广泛的研究,但主要与我的上下文无关,或者它们使用的是我不想使用的XML格式.
我认为这只是复制序列化方法并更改bFormatter.Serialize(fs,employee);的情况.到bFormatter.Deserialize(fs,employee);但是我在反序列化列表后仍然会做什么.
BinaryFormatter bFormatter = new BinaryFormatter();
FileStream fs = File.Open(FILENAME, FileMode.Open);
object obj = bFormatter.Deserialize(fs);
然后,对象会带回我需要的数据,但是我无法将对象obj数据放入可用格式,如果可能的话,它会卡在对象obj中,我想尝试将其放回Employee列表中
解决方法:
我给你的圣诞节礼物.希望能帮助到你.
标签:generic-list,serialization,deserialization,binaryformatter,c 来源: https://codeday.me/bug/20191119/2034748.html