C# 序列化、 反序列化 字符串

ExpandedBlockStart.gif View Code
 1  using System;
 2  using System.IO;
 3  using System.Runtime.Serialization.Formatters.Binary;  
 4  
 5   
 6  namespace Utils
 7 {
 8      public  class Serialized
 9     {
10 
11          ///   <summary>
12           ///  对象序列化成字符串
13           ///   </summary>
14           ///   <param name="obj"></param>
15           ///   <returns></returns>
16           public  static  string Serialize( object obj)
17         {
18              if (obj ==  nullreturn  null
19 
20              string serialize =  string.Empty;
21 
22              using (MemoryStream mStream =  new MemoryStream())
23             {
24                 BinaryFormatter bFormat =  new BinaryFormatter();
25 
26                 bFormat.Serialize(mStream, obj);
27 
28                  byte[] bytes = mStream.ToArray();
29 
30                 serialize = Convert.ToBase64String(bytes);
31             }
32 
33              return serialize;
34         }
35 
36          ///   <summary>
37           /// 字符串反序列化成对象
38           ///   </summary>
39           ///   <param name="serialize"></param>
40           ///   <returns></returns>
41           public  static  object Deserialize( string serialize)
42         {
43              if ( string.IsNullOrEmpty(serialize)) {  return  null; }
44 
45              object obj =  new  object();
46 
47              byte[] bytes =Convert.FromBase64String(serialize);
48 
49              using (MemoryStream mStream =  new MemoryStream(bytes))
50             {
51                 BinaryFormatter bFormat =  new BinaryFormatter();
52 
53                 mStream.Seek( 0, SeekOrigin.Begin);
54 
55                 obj = ( object)bFormat.Deserialize(mStream);
56             }
57 
58              return obj;
59         }
60     }
61 }

转载于:https://www.cnblogs.com/guo0/archive/2012/05/10/2494599.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值