2017-02-17 2 views
2

Es scheint, dass ich bindat-pack nicht richtig arbeiten kann. Es ist eine Funktion von Daten in binäre Form zu packen: https://www.gnu.org/software/emacs/manual/html_node/elisp/Bindat-Examples.htmlWie man Emacs `bindat-pack` Daten einstellt

ich folgenden Beispielcode habe:

(require 'bindat) 

(setq data-spec 
    '((type  u8) 
    (id  strz 8))) 

(setq data (bindat-pack 
      data-spec 
      `((:type . 2) 
       (:id . "Test")))) 

data jetzt verpackt richtig wie data-spec beschrieben werden soll, aber es ist nur ein leerer String mit Nullen aufgefüllt (\x00).

Haben einige eine Ahnung, was ich hier falsch mache?

Ich verwende Emacs 25.1.1 (x86_64-w64-mingw32) auf Windows 10.

Antwort

2

Ok ich eine Lösung gefunden, mich. Die Doppelpunkte werden nicht benötigt, wenn Sie die Daten festlegen. Der Beispielcode auf der Emacs-Seite scheint falsch zu sein, immer noch nicht sicher warum.

Arbeitscode:

(require 'bindat) 

(setq data-spec 
    '((type  u8) 
    (id  strz 8))) 

(setq data (bindat-pack 
     data-spec 
     `((type . 2) 
      (id . "Test")))) 
Verwandte Themen