如何将十六进制和二进制值(不是它们的字符串表示)写入文件?例如,如何将十六进制值1A(十进制26)写入文件?
以前,我尝试过使用BufferedWriter。
答案 0 :(得分:3)
您应该使用OutputStream
来编写二进制数据而不是Writer
实现(适用于文本数据)。
Java示例
(抱歉,我不知道Clojure)
byte b = 0x1A;
OutputStream os = new BufferedOutputStream(new FileOutputStream("c:\tmp\out.dat"));
os.write(b);
答案 1 :(得分:3)
(ns test.core
(:use [clojure.java.io]))
(with-open [os (output-stream "/tmp/foo")]
(.write os 0x1A))
请注意,处理I / O时with-open
宏非常方便。