我有一个二维切片,看起来像这样:slice := [][]int{}sliceElement := []int{2, 5, 3, ...}slice = append(slice, sliceElement)我想把它写到一个文件中,以使其持久化,理想情况下,稍后从该文件将其恢复为相同的2维切片。实现此目的的最节省存储的方法是什么?
1 回答

呼啦一阵风
TA贡献1802条经验 获得超6个赞
实际上有多种选择;有些比其他的存储效率更高。
您可以将数组编码为 JSON 并将其保存到文件中。该文件将保持人类可读,但并不是真正的存储效率。这是最简单的方法。
您也可以将其存储为.csv文件。特别是对于大型数组,这将导致文件比使用 JSON 更小。不幸的是,必须自己进行编码。
如果您真的想以最高效的存储方式存储它,则可以将数组作为二进制文件写入磁盘。如果大小总是已知的,你可以一个接一个地写出所有数字,例如32位,然后以这种方式读取它。如果数组具有动态大小,则还必须提供此信息。您可以执行一些操作,例如将外部数组的长度作为第一个 32 位值写入文件,将内部数组的长度写入第二个值,然后写入数组的实际内容。使用此技术更为复杂,因为您必须自己解析文件。但是,这也是所介绍的选项中存储效率最高的方式。
- 1 回答
- 0 关注
- 92 浏览
添加回答
举报
0/150
提交
取消