遭遇反序列化异常:"在分析完成之前就遇到流结尾"
1public static object GetFormatter(string filePath)
2{
3 object result = null;
4 try
5 {
6 BinaryFormatter formatter=new BinaryFormatter();
7 if (System.IO.File.Exists(filePath))
8 {
9 FileStream file = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite);
10 //file.Seek(0, SeekOrigin.Begin);
11 file.Position = 0;
12 file.Seek(0, SeekOrigin.Begin);
13 result=(object)formatter.Deserialize(file);
14 file.Close();
15 }
16 }
17 catch (SerializationException ex)
18 {
19 throw new Exception(ex.ToString());
20 //return null;
21 }
22 return result;
23 }
2{
3 object result = null;
4 try
5 {
6 BinaryFormatter formatter=new BinaryFormatter();
7 if (System.IO.File.Exists(filePath))
8 {
9 FileStream file = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite);
10 //file.Seek(0, SeekOrigin.Begin);
11 file.Position = 0;
12 file.Seek(0, SeekOrigin.Begin);
13 result=(object)formatter.Deserialize(file);
14 file.Close();
15 }
16 }
17 catch (SerializationException ex)
18 {
19 throw new Exception(ex.ToString());
20 //return null;
21 }
22 return result;
23 }
1 public static bool Formatter(object obj,string filePath)
2 {
3 try
4 {
5 IFormatter formatter = new BinaryFormatter();
6 if (!System.IO.File.Exists(filePath))// 创建文件
7 {
8 System.IO.FileStream fs = System.IO.File.Create(filePath);
9 formatter.Serialize(fs, obj);
10 fs.Close();
11 }
12 }
13 catch (SerializationException)
14 {
15 return false;
16 }
17 return true;
18 }
序列化正常,反序列化就报如题错误!
2 {
3 try
4 {
5 IFormatter formatter = new BinaryFormatter();
6 if (!System.IO.File.Exists(filePath))// 创建文件
7 {
8 System.IO.FileStream fs = System.IO.File.Create(filePath);
9 formatter.Serialize(fs, obj);
10 fs.Close();
11 }
12 }
13 catch (SerializationException)
14 {
15 return false;
16 }
17 return true;
18 }
序列化正常,反序列化就报如题错误!