binaryformatter相关内容

二进制流"0"在反序列化时不包含有效的BinaryHeader错误

在过去两天里找到了该问题的答案之后,我希望这里的人能为您提供帮助. 我已经使用VS2012用c#编写了一个程序,该程序使用BinaryFormatter将用户可序列化的类序列化为Stream,然后再将其保存到文件中,从而保存用户的项目数据.该程序已经使用了一段时间,但是最近用户无法打开他前一天保存的文件.他向我发送了文件,而我在防盗器中遇到的错误是: “二进制流'0'不包含有效的Bin ..
发布时间:2020-07-07 19:06:00 C#/.NET

BinaryFormatter中的引用完整性

Protobuf-net中存在AsReference选项,并且BinaryFormatter是“图形序列化程序"一词使我认为BinaryFormatter不维护引用,而是为每个对象进行了复制. 但是我做了一些测试,发现即使在递归引用中,单个BinaryFormatter Serialize()或Deserialize()调用中的所有引用也都得到了维护. 我可以确认BinaryForma ..
发布时间:2020-07-07 19:05:57 C#/.NET

Netstandard 1.5中的BinaryFormatter

根据 .NET CoreFx的列表从1.3开始,API及其相关的.NET Platform Standard版本,System.Runtime.Serialization.Formatters已添加到.NET Platform Standard中,这很酷,但是当我尝试创建面向.NET Core类库时.net Core RC2下的netstandard1.5,我不能使用它。 代码很简单,只想声 ..
发布时间:2020-06-04 18:33:14 C#/.NET

BinaryFormatter忽略程序集版本

我具有以下方法来生成对象的哈希。效果不错!但是,当我更改程序集的版本时,即使对象相同,哈希也会发生变化。 公共静态字符串GetHash (对象项) { MemoryStream memoryStream = new MemoryStream(); BinaryFormatter binaryFormatter =新的BinaryFormatter(); binaryFormatt ..
发布时间:2020-05-31 19:08:49 C#/.NET

C#BinaryFormatter字节序

我正在使用二进制格式化程序来序列化我的对象。 我想知道序列化字节数组中属性的顺序是什么(根据对象类中的属性顺序?随机吗?) 如果我可以根据以下内容控制字节的顺序, 例如, 如果我序列化以下obj: 公共类人类 { int年龄{get; set;} int体重{get; set;} } 如果我要对其进行序列化,字节顺序是什么意思? (前4个字节代表年 ..
发布时间:2020-05-30 21:52:44 C#/.NET

.NET与BinaryFormatter的向后兼容性

我们在C#游戏中使用BinaryFormatter,以保存用户游戏进度,游戏级别等。我们遇到了向后兼容的问题。 目标是: 关卡设计师创建广告系列(“关卡和规则”),我们更改了代码,广告系列仍然可以正常运行。 用户保存游戏,我们发布了一个游戏补丁,用户仍应能够加载游戏 不管两个版本有多远,不可见数据转换过程都应该起作用。例如,用户可以跳过我们的前5个次要更新,而直接获得第6个。尽管如 ..
发布时间:2020-05-30 21:01:44 C#/.NET

BinaryFormatter的替代品

一个128³双精度的BinaryFormatter序列化数组,占用50 MB空间。用两个 double 字段对128³ struct 的数组进行序列化需要150 MB的内存,并且要花费20秒以上的时间来处理。 是否有可以生成紧凑文件的快速简单替代方案?我的期望是上述示例将分别占用16 MB和32 MB,并且处理时间不到两秒钟。我看了一下protobuf-net,但它似乎甚至不支持 struc ..
发布时间:2020-05-30 20:54:00 C#/.NET

反序列化BinaryFormatter给出SerializationException

我得到一个: System.Runtime.Serialization.SerializationException:无法找到 程序集'myNameSpace,版本= 1.0.0.0,区域性=中性, PublicKeyToken = null 当试图反序列化另一个程序中的某些数据时, 经过一番谷歌搜索后,我发现这显然只能使用共享程序集完成。 但是,我的数据库中充满了这个 ..
发布时间:2020-05-30 20:08:28 C#/.NET

具有不同程序集版本的二进制反序列化

我有一个使用BinaryFormatter序列化带有字符串和布尔值的结构的项目? 序列化/反序列化工作正常,但是,如果我要更改执行该工作的程序集,则由于二进制文件中的标头指示它需要 Assembly x 而不是 Assembly y 来处理数据。 是否可以将序列化/反序列化设置为与程序集无关? 解决方案 您可以控制二进制格式化程序的方式通过将自定义SerializationBi ..
发布时间:2020-05-30 20:02:46 C#/.NET

在一个程序集中进行序列化,而在另一个程序集中进行反序列化?

我在两个项目中有相同的类,一个在runtime上发送到另一个必须反序列化该对象并使用它的进程(假定两个对象相同,但程序集名称不同,所以它们实际上被解释为两种不同的类型).根据我的研究,由于以下原因,我提出了无法使用的解决方案. Json.NET:给我一个例外,这两种类型不兼容(在序列化设置中使用typename.all进行尝试). protobuf-net:要求我在每个位置添加属性,或 ..
发布时间:2020-04-23 08:30:38 C#/.NET

如何在iOS中将图像转换为二进制格式?

我正在开展一个项目,我需要将图像上传到我的服务器。我想将我的图像的二进制数据存储到数据库中的BLOB数据类型字段。因此,我需要将我的图像转换为二进制格式。这样它就可以保存在服务器数据库中。 那么如何将图像转换为二进制格式?请指教。 解决方案 您可以使用 CoreGraphics '方法 UIImagePNGRepresentation(UIImage * image),返回 NSDa ..
发布时间:2018-07-24 15:42:18 移动开发

BinaryFormatter是否应用任何压缩?

当.NET的 BinaryFormatter 用于序列化对象图,是否应用了任何类型的压缩? 编辑 - 如果字符串已被嵌入,请按住。 NET,没有必要担心重复的字符串,对吧? 解决方案 不,它不提供任何压缩,使用 自己压缩输出, GZipStream 类型。 编辑: Mehrdad 有一个很好的例子,这个技术在他的回答如何使用gzip压缩.net对象实例。 编辑2:字符串可 ..
发布时间:2016-12-25 13:13:52 C#/.NET