A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 邓艳秋 中级黑马   /  2012-10-6 13:34  /  1857 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

只能序列化一个类么,可不可以序列化一个数组呢?

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

2 个回复

倒序浏览
Newtonsoft.Json
序列化的内容不只是类的对象,
数组也可以
using System;
using System.IO;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;

class Class1
{
  /// <summary>
  /// 应用程序的主入口点。
  /// </summary>
  [STAThread]
  static void Main(string[] args)
  {
   //
   // TODO: 在此处添加代码以启动应用程序
   //
   PurchaseOrder obj = new PurchaseOrder();
   obj.ItemsOrders=new Item[100];
   obj.ItemsOrders[0]=new Item();
   obj.ItemsOrders[0].ItemID="First";
   obj.ItemsOrders[0].ItemPrice=500.25M;

   obj.ItemsOrders[1]=new Item();
   obj.ItemsOrders[1].ItemID="Second";
   obj.ItemsOrders[1].ItemPrice=66.88M;

   IFormatter formatter = new BinaryFormatter();
   Stream stream = new FileStream("MyFile.bin", FileMode.Create, FileAccess.Write, FileShare.None);
   formatter.Serialize(stream, obj);
   stream.Close();
  }

  [Serializable]
  public class PurchaseOrder
  {
   public Item [] ItemsOrders;
  }

  [Serializable]
  public class Item
  {
   public string ItemID;
   public decimal ItemPrice;
  }
}

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
序列化是把对象或者对象图转换成字节流。

所以,只要是对象就可以。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马