2

私はここの初心者なので、私と一緒に優しくしてください=)

ビットマップ ファイルを作成するために LISP (申し訳ありませんが、他の言語はありません) でスクリプトを開発しようとしています。ビットマップ形式について別の Web サイトを参照しましたが、私の懸念は手順そのものです。

LISP を使用すると (および perl / awk、私​​の環境は Linux RHEL5 です)、「通常の」ASCII コード (つまり、印刷可能 / 表示可能) のテキスト ファイルしか作成できません。

私の問題は、印刷できない文字に関するものです。たとえば、ビットマップ ヘッダーに 16 進数のチェーン 00 00 00 00 を入れたい場合、対応する ASCII コードは何でしょうか?

それらをファイルに出力するにはどうすればよいですか?

あなたの助けと説明をありがとう!

一番、

Pちゃん

4

2 に答える 2

6

Common Lisp は、任意のバイナリ データを読み書きできます。

ストリームをバイナリ ストリームとして開き、READ-BYTEWRITE-BYTE、などの関数を使用する必要がREAD-SEQUENCEありWRITE-SEQUENCEます。

例:

(with-open-file (s "temp-bytes" 
                   :direction :output
                   :element-type 'unsigned-byte)
  (write-byte 101 s))
于 2012-07-26T06:05:08.453 に答える
1

バイト単位の操作 (Rainer の回答を参照) とは別に、 のようなライブラリを使用できますopticl

于 2012-07-26T20:48:32.917 に答える