C#操作XML序列化与反序列化
2024-09-04 14:18:53
public class XmlSerializerHelper
{
/// <summary>
/// 从XML文件中反序列化读取对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="filePath"></param>
/// <param name="rootElementName"></param>
/// <param name="ns"></param>
/// <returns></returns>
public static T Load<T>(string filePath, string rootElementName, string ns)
where T : class,new()
{
try
{
using (Stream stream = new FileStream(filePath, FileMode.OpenOrCreate))
{
XmlSerializer ser = new XmlSerializer(typeof(T), new XmlRootAttribute
{
ElementName = rootElementName,
Namespace = ns
});
return ser.Deserialize(stream) as T;
}
}
catch (Exception ex)
{
return new T();
}
} /// <summary>
/// 向XML文件中序列化对象
/// </summary>
/// <param name="filePath"></param>
/// <param name="o"></param>
/// <param name="rootElementName"></param>
/// <param name="ns"></param>
/// <returns></returns>
public static bool Save(string filePath, object o, string rootElementName, string ns)
{
try
{
using (Stream stream = new FileStream(filePath, FileMode.OpenOrCreate))
{
XmlSerializer ser = new XmlSerializer(o.GetType(), new XmlRootAttribute
{
ElementName = rootElementName,
Namespace = ns
});
ser.Serialize(stream, o);
return true;
}
}
catch (Exception ex)
{
return false;
}
}
}
XML序列化与反序列化
最新文章
- 【JavaScript】之【Object】
- CentOS7下安装soaplib
- 个人练习--gif图流程
- 64. Minimum Path Sum
- WIFI实时监控追踪小车演示视频——安卓端、小车
- js 滚轮事件 滚轮焦点图(轮播图)
- js如何在指定页面跳转到另一指定页面
- 关于ajax请求rul时意外结束符号
- 服务器固件测试--PCI设备的介绍(集成网卡和外插网卡)
- python替换残缺的多域名图片网址
- Python——使用高德API获取指定城指定类别POI并实现XLSX文件合并
- jqgrid修改表格内容为居中
- css样式的书写顺序及原理
- input设置背景透明、placeholder的字体颜色及大小
- 实现tail
- PHP:session无法使用
- 深入出不来nodejs源码-V8引擎初探
- 一、java概述
- eclipse Maven项目Context root 为空,不能修改
- JavaScript中自定义函数以及文本框、radio、下拉框的值的获取,结合淘宝竞拍案例来理解。。。