我需要将存储在磁盘上的Nippy数据结构转换成可以被Nippy读取的格式。Nippy使用字节数组,因此我需要一种将文件转换为字节数组的方法。我已经尝试过
(clojure.java.io/to-byte-array (clojure.java.io/file folder-path file-path))
但这样会导致...
java.lang.IllegalArgumentException: Value out of range for byte: ?
然后我尝试:
(into-array Byte/TYPE (map byte (slurp (clojure.java.io/file folder-path file-path))))
但是某种原因导致命名空间错误,我找不到正确的命名空间。
为了首先编写Nippy结构,我正在使用:
(with-open [w (clojure.java.io/output-stream file-path)]
(.write w (nippy/freeze data)))))
with-open
绑定中。您可以将输入和输出绑定在同一个with-open
中。 - Jerry101