黑马程序员技术交流社区

标题: 一道未解决的练习题 [打印本页]

作者: 熊薇    时间: 2013-5-17 19:55
标题: 一道未解决的练习题
本帖最后由 熊薇 于 2013-5-19 00:59 编辑

题目: 将几个int、字符串添加到ArrayList中,然后序列化到文件中,再反序列化回来;
添加到ArrayList中这简单,序列化、反序列化不是很懂……
作者: SOAR    时间: 2013-5-17 22:02
ObjectOutput
ObjectInput
自己去看文档。
作者: 周琪    时间: 2013-5-18 10:54
class Program
    {
        static void Main(string[] args)
        {
            ArrayList lists = new ArrayList();
            lists.Add(1);
            lists.Add(31);
            lists.Add("我的名字叫周琪");
            lists.Add("希望黑马见");

            BinaryFormatter bf = new BinaryFormatter();   //创建二进制序列化器
            using (FileStream fs = new FileStream("lists.txt", FileMode.Create))   
            {
                bf.Serialize(fs, lists);  //这时lists.txt存到了运行的程序里面的Debug里面了
            }
  //===========================上面的代码为序列化,下面的为反序列化并输出。好辛苦哦。别人别复制哦
            BinaryFormatter bfre = new BinaryFormatter();
            using (FileStream fsre = new FileStream("lists.txt", FileMode.Open))
            {
                ArrayList listsRe = (ArrayList)bfre.Deserialize(fsre);   //反序列化并转为AarryList类型
                foreach (var i in listsRe)                //遍历输出
                {
                    Console.WriteLine(i);
                }
            }
            Console.ReadKey();
        }
    }
作者: 王朋    时间: 2013-5-19 12:13
简单说序列化就是为了方便数据的传递,序列化的方式有好几种,一个是json序列化,一个是2进制序列化,一个是xml序列化




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2