代码:
/**************************
*
* 序列化与反序列化
*
*
* ************************/
using System;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;//序列化
namespace 序列化与反序列化
{
class Demo1
{
private string _Path1 = @"E:\TeacherLiuSutdy\Hight Level Teach\SerializableTest.txt";
/// <summary>
/// 对象的序列化
/// </summary>
public void Test1()
{
Person p = new Person("李一凡",8);
if (File.Exists(_Path1))
{
using (FileStream fs = new FileStream(_Path1, FileMode.OpenOrCreate))
{
BinaryFormatter bf = new BinaryFormatter();
bf.Serialize(fs,p);
}
}
}
/// <summary>
/// 对象的反序列化
/// </summary>
public void Test2()
{
Person p = null;
using (FileStream fs = new FileStream(_Path1, FileMode.OpenOrCreate))
{
BinaryFormatter bf = new BinaryFormatter();
p = bf.Deserialize(fs) as Person;
}
//显示信息
Console.WriteLine(p.Name);
}
static void Main(string[] args)
{
Demo1 obj = new Demo1();
obj.Test1();
obj.Test2();
Console.WriteLine("Hello World!");
Console.ReadKey();
}
}
}
//序列化对象
using System;
using System.Collections.Generic;
using System.Text;
namespace 序列化与反序列化
{
[Serializable]
public class Person
{
private string _Name;
private int _Age;
public string Name
{
get { return _Name; }
set { _Name = value; }
}
public int Age
{
get { return _Age; }
set { _Age = value; }
}
public Person(string name,int age)
{
_Name = name;
_Age = age;
}
}
}
C# 序列化与反序列化实践
本文介绍了一种使用 C# 实现序列化与反序列化的具体方法,通过实例展示了如何将 Person 类的对象序列化到文件中,并从文件中反序列化为对象。此过程使用了 BinaryFormatter 类。
7702

被折叠的 条评论
为什么被折叠?



