PHP 基础:使用 XMLSerialize 序列化与反序列化
本文主要介绍了使用 XMLSerialize 序列化与反序列化,供大家参考下
概念:XML 序列化是将公共字段和属性转化为序列格式(这里指 XML),以便存储或
传输的过程。反序列化则是从 XML 中重新创建原始状态的对象.
复制代码 代码如下:
class
SerializeDemo
{
static
void Main()
{
EmployeeCollection employeeCollection =
new
EmployeeCollection()
{
Employees = Employeer.Employees()
};
XmlSerializer serialize =
new
XmlSerializer(typeof(EmployeeCollection));
string filePath = @"E:\PProject\Test\Employee.xml";
SerializeEmployee(serialize, filePath, employeeCollection);
DeserializeEmployee(serialize, filePath);
}
static
void SerializeEmployee(XmlSerializer serialize, string filePath, EmployeeCollection
employeeCollection)
{
using (FileStream fs =
new
FileStream(filePath, FileMode.Create, FileAccess.Write))
{
serialize.Serialize(fs, employeeCollection);
}
}
static
void DeserializeEmployee(XmlSerializer serialize,string filePath)
{
using (FileStream fs =
new
FileStream(filePath, FileMode.Open, FileAccess.Read))
{
EmployeeCollection collection = (EmployeeCollection)serialize.Deserialize(fs);
collection.Employees.ForEach(e => Console.WriteLine("Name:{0},Gender:{1},Age:
{2},Education:{3}", e.userName, e.gender, e.age, e.education));
}
}
}
[Serializable]