序列化文件出错:二进制流“ 0”不包含有效的BinaryHeader

问题描述

我有一个非常奇怪的问题,这使我完全困惑。任何帮助将不胜感激。

我有一个保存文件,正在用以下代码写出:

        using (FileStream fs = File.Open(SavePath,FileMode.Create,FileAccess.Write))
        {
            BinaryFormatter bf = new BinaryFormatter();
            bf.Serialize(fs,SaveData);
        }

对于大多数用户来说,它工作正常,并且对我来说总是运行良好。但是对于不到1%的用户,此代码正在写出其中仅包含零的文件。它具有完全相同的文件大小,文件中只有零,而不是来自该类的实际数据。该类存在于内存中,不涉及数据库或Internet连接。

这些用户始终会遇到此问题,而其他任何用户都不会发生。每个人都运行完全相同的代码。有谁知道什么可能导致这种情况发生?这些用户计算机必须存在某些特定原因,导致其始终失败。

文件保存位置在: C:\ Users [USERNAME] \ AppData \ LocalLow \ ProgramFolder

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...