序列化将两个数组分次保存进一个文件。读取出问题。希望高手解答。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization;
using System.IO;
namespace _1._6test
{
class Program
{
static void Main(string[] args)
{
ArrayList l = new ArrayList();
for (int x = 1; x < 5; x++)
{
Console.WriteLine(x);
l.Add(x);
}
Stream s = File.Open("11.bin", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);
BinaryFormatter b = new BinaryFormatter();
b.Serialize(s, l);
s.Close();
ArrayList k = new ArrayList();
for (int x = 6; x < 10; x++)
{
Console.WriteLine(x);
k.Add(x);
}
b = new BinaryFormatter();
Stream s1 = File.Open("11.bin", FileMode.Append);
b.Serialize(s1, k);
s1.Close();
Console.Write("正在从磁盘反序列化对象图..");
Stream r = File.Open("11.bin", FileMode.Open, FileAccess.Read);
BinaryFormatter c = new BinaryFormatter();
ArrayList p = (ArrayList)c.Deserialize(r);
Console.WriteLine("完成。");
foreach (int i in p)
{
Console.WriteLine(i);
}
r.Close();
Console.WriteLine("\r\n按任意键退出。");
Console.Read();
}
}
}
以上代码。 但是读取的时候,只能读出1 2 3 4 第二个数组,也就是后加到文件里的数组怎么读出来?谢谢请解答。
问题2:我是刚刚才工作。现在处在学习阶段,老大让我突破二进制序列化的大小限制。 怎么办。15038549 QQ