我正在使用Marshal.dump
来序列化对象数组,我需要获取返回值的大小(以 KB 为单位)。有什么想法吗?
由于 Marshal.dump
的输出是一个字符串,您可以只询问它的长度。最安全的方法是要求bytesize
:
dumped = Marshal.dump(array)
kb = dumped.bytesize / 1024
bytesize
方法始终以字节为单位返回字符串的长度,而 length
以字符为单位返回字符串的长度。如果使用多字节编码方法(如 UTF-8),则这两个值可能会有所不同。
kbytes = Marshal.dump(ary_of_objs).size / 1000.0
呢?
var = Base64.encode64(Marshal.dump(@result))
var.size
是我的救命恩人