BinarySerialize
BinarySerialize[expr]
用 ByteArray 对象给出任何表达式 expr 的二进制表示.
更多信息和选项
- BinarySerialize 有以下选项:
-
Method Automatic 要使用的序列化方法的详细信息 PerformanceGoal Automatic 尝试优化性能方面 - PerformanceGoal 的可能设置包括:
-
"Speed" 优化用于序列化和反序列化速度 "Size" 序列输出的小型化的优化 Automatic 自动选取序列化策略 - Method 的可能设置包括:
-
{typespec1enc1,…} 为特殊类型指定编码 Automatic 基于数据自动选取编码 - typespeci 的可能格式包括:
-
"PackedArrayIntegerType" 整数打包数组 "PackedArrayRealType" 实数值打包数组 "PackedArrayComplexType" 复数值打包数组 - "PackedArrayIntegerType" 的可能设置包括 "Integer8"、"Integer16"、"Integer32" 和 "Integer64"(仅用于 64 位系统).
- "PackedArrayRealType" 的可能设置包括 "Real32" 和 "Real64".
- "PackedArrayComplexType" 的可能设置包括 "Complex64" 和 "Complex128".
- enci 编码规范的默认设置是 Automatic,这时 BinarySerialize 会使用适于给定数据的类型.
- BinarySerialize 使用 WXF 格式.
- BinaryDeserialize 是 BinarySerialize 的反函数.
范例
打开所有单元关闭所有单元范围 (7)
把 BinarySerialize 应用于符号表达式:
BinarySerialize 有效地存储机器整数:
BinarySerialize 有效地存储机器实数:
BinarySerialize 有效存储字符串:
BinarySerialize 支持打包数组:
选项 (4)
Method (3)
默认情况下,BinarySerialize 使用适于数据的最小整数类型:
PerformanceGoal (1)
属性和关系 (4)
使用 PerformanceGoal->"Speed" 更快,但产生更大的输出:
使用 PerformanceGoal->"Size" 更慢,但产生更小的输出:
BinarySerialize 把字符串编码为 UTF-8:
BinaryDeserialize 是 BinarySerialize 的反函数:
DumpSave 存储附加在文件中符号的定义:
BinarySerialize 只存储输入表达式,可以用 BinaryDeserialize 恢复:
可能存在的问题 (2)
对于小型表达式,PerformanceGoal->"Size" 可能不能产生更小的输出:
Method 参数 "PackedArrayIntegerType" 必须与数据选择一致:
Automatic 的设置将总是使用适于数据的尺寸:
文本
Wolfram Research (2017),BinarySerialize,Wolfram 语言函数,https://reference.wolfram.com/language/ref/BinarySerialize.html (更新于 2018 年).
CMS
Wolfram 语言. 2017. "BinarySerialize." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2018. https://reference.wolfram.com/language/ref/BinarySerialize.html.
APA
Wolfram 语言. (2017). BinarySerialize. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/BinarySerialize.html 年