前言 在项目中,我们经常用到各种配置文件,比如xml文件.binary文件等等,这里主要根据实践经验介绍下xml文件的序列化和反序列化(毕竟最常用). 实践背景:我要做一个用户管理功能,用户账号信息存储在xml/binary文件中,需要对其进行读写,而且为了不让用户修改,必须对其加密,当时想的有3种做法: (1)实现读写xml配置文件,并将关键信息加密: (2)实现读写binary配置文件,并将关键信息加密: (3)直接对配置文件进行加密解密和读写,不管它所使用的文件格式是xml.binary或…
一. IO读写 这里主要包括文件的读.写.移动.复制.删除.文件夹的创建.文件夹的删除等常规操作. 注意:这里需要特别注意,对于普通的控制台程序和Web程序,将"相对路径"转换成"绝对路径"的方法不一致. (1). 在web程序中,可以使用HttpContext.Current.Server.MapPath进行转换,使用方法通过 ~/定位到一级目录,eg:FileOperateHelp.Write_Txt("~/TestFile/mr.txt",…
最近在写一个xml序列化及反序列化实现时碰到个问题,大致类似下面的代码: class Program { static void Main1(string[] args) { var test = new Test() { A = "test" }; var ms = new MemoryStream(); using (XmlWriter xmlWriter = XmlWriter.Create(ms, new XmlWriterSettings() { Encoding = Enc…
XML序列化与反序列化 1.将一个类转化为XML文件 /// <summary> /// 对象序列化成XML文件 /// </summary> /// <param name="type">对象类型</param> /// <param name="obj">对象</param> /// <param name="fileName">序列化的XML文件路径<…
http://www.cnblogs.com/yukaizhao/archive/2011/07/22/xml-serialization.html 这篇随笔对应的.Net命名空间是System.Xml.Serialization:文中的示例代码需要引用这个命名空间.   为什么要做序列化和反序列化? .Net程序执行时,对象都驻留在内存中:内存中的对象如果需要传递给其他系统使用:或者在关机时需要保存下来以便下次再次启动程序使用就需要序列化和反序列化.   范围:本文只介绍xml序列化,其实序列…
webservice在工作中用到的很多,基本都是以XML格式问通讯内容,其中最关键的就是XML串的序列化及反序列化. XML的运用中有两种信息传递,一种为XML的请求信息,另一种为返回信息,要运用XML,首先要为这两种返回信息新建实体类. using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Xml.Serialization; namespace Tes…
闲着没事,写了两个通用的XML序列化与反序列化的方法. 贴出来当作笔记吧! /// <summary> /// XML序列化 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="className"></param> /// <returns></returns> public stat…
这篇随笔对应的.Net命名空间是System.Xml.Serialization:文中的示例代码需要引用这个命名空间.   为什么要做序列化和反序列化? .Net程序执行时,对象都驻留在内存中:内存中的对象如果需要传递给其他系统使用:或者在关机时需要保存下来以便下次再次启动程序使用就需要序列化和反序列化.   范围:本文只介绍xml序列化,其实序列化可以是二进制的序列化,也可以是其他格式的序列化.   看一段最简单的Xml序列化代码 1 2 3 4 5 6 7 8 9 10 11 12 clas…
c# XML序列化与反序列化 原先一直用BinaryFormatter来序列化挺好,可是最近发现在WinCE下是没有办法进行BinaryFormatter操作,很不爽,只能改成了BinaryWriter和BinaryReader来读写,突然想到能不能用XML来序列化?于是在网上查了些资料便写了些实践性代码,做些记录,避免以后忘记. 序列化对象 public class People { [XmlAttribute("NAME")] public string Name { set; g…
之前从网络上找了一个Xml处理帮助类,并整理了一下,这个帮助类针对Object类型进行序列化和反序列化,而不需要提前定义Xml的结构,把它放在这儿供以后使用 /// <summary> /// 功能:Xml序列化.反序列化帮助类 /// 说明: /// 创建人: /// 创建时间:2014年3月13日 /// </summary> public static class XmlHelper { /// <summary> /// 私有方法,不被外部方法访问 /// 序列…