2011-11-04 104 views
2

如何将十六进制和二进制值(而不是其字符串表示形式)写入文件?例如,如何将十六进制值1A(十进制26)写入文件?将十六进制和二进制值写入文件

以前,我试过使用BufferedWriter。

回答

3
(ns test.core 
    (:use [clojure.java.io])) 

(with-open [os (output-stream "/tmp/foo")] 
    (.write os 0x1A)) 

注意,与I/O处理时with-open宏是很方便。

3

您应该使用OutputStream来编写二进制数据,而不是Writer实现(适用于文本数据)。

Java示例

(对不起,我不知道的Clojure)

byte b = 0x1A; 
OutputStream os = new BufferedOutputStream(new FileOutputStream("c:\tmp\out.dat")); 
os.write(b); 
相关问题