C#脚本实践(四): 反射与序列化

本文介绍了C#中如何进行XML序列化和反序列化,提供了具体的代码示例。同时,探讨了如何利用.NET的反射机制获取类的元数据,并在C++中应用。通过反射,可以查看并编辑类的字段,包括不同类型的数据,如布尔值、整数、浮点数等。示例展示了如何遍历和打印对象的结构。
摘要由CSDN通过智能技术生成
  • 序列化
    • 这个比较简单, .net直接就支持, 以XML序列化为例:
      	public static string SerializeToString (object obj)
      	{
      		XmlSerializer serializer = new XmlSerializer (obj.GetType ());
       
      		using (StringWriter writer = new StringWriter()) {
      			serializer.Serialize (writer, obj);
       
      			return writer.ToString ();
      		}
      	}
      
      	public static T SerializeFromString<T> (string xml)
      	{
      		XmlSerializer serializer = new XmlSerializer (typeof(T));
        
      		using (StringReader reader = new StringReader(xml)) {
      			return (T)serializer.Deserialize (reader);
      		}
      	}
      	public struct Vector3
      	{
      		public float x;
      		public float y;
      		public float z;
      	}
      	public class TestClass
      	{
      		public int testInt = 1234;
      		public float testFloat = 0.2341f;
      		public bool[] boolArray = {true, false, false, true};
      		public Vector3 position;
      		public TestClass ()
      		{
      			this.position.x = 100;
      			this.position.y =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值