我正在使用Rebol2,并且希望持久化一个哈希!块。
目前,我正在将其转换为to-string,然后使用save。
有更好的办法吗?例如:
r: make hash! ["one" "two"]我想将它保存到一个文件中,然后将其加载回r。
发布于 2019-12-01 08:54:20
你离你的目标很近。只需使用save/all和load
>> r: make hash! ["one" "two"]
== make hash! ["one" "two"]
>> save/all %htest r
>> r: load %htest
== make hash! ["one" "two"]如果您想在Red中获得相同的结果,只需要多一个命令即可。
>> r: do load %htest
== make hash! ["one" "two"]发布于 2019-12-02 11:44:21
就像任何其他值一样-- save,然后是load。
顺便说一下,使用hash!进行持久存储没有任何好处。load给你的是一个普通的block! ([make hash! [...]])。与仅仅加载block!相比,从这些加载的数据填充哈希表要花费更多的时间,但之后您可以更快地查找。
换句话说,你可以:
>> save %database [one two]
>> make hash! load %database
== make hash! [one two]如您所链接的教程中所述。
https://stackoverflow.com/questions/59114599
复制相似问题