kostenloser Webspace werbefrei: lima-city


Binäre Datei mit Python decodieren

lima-cityForumProgrammiersprachenPython

  1. Autor dieses Themas

    frodo89

    Kostenloser Webspace von frodo89

    frodo89 hat kostenlosen Webspace.

    Hallo,

    Ein weiteres tag/problem">Problem mit Python.

    Es handelt sich um das 'Universal Data Bin File'-Format welches durch die Firma 'Gantner Instruments' entwickelt wird.
    Gantner ist eine Firma die Datenlogger für Messstände baut.

    Ich möchte diese Daten mit Python zur verarbeitung aufbereiten, und fand im Internet dieses Sheet welches das Format beschreibt.
    www.ioselect.com/Downloads/UDBF_107.pdf

    Reichen die Informationen die hier gegeben sind aus, um eine Datei zu decodieren?


    lg,


    EDIT: Bevor jetzt gefragt wird, was ich hier überhaupt suche:
    Ich hätte gerne ein allgemeines Statement, ob die Angaben in diesem Sheet ausreichen, um die Datei z.B. in Ascii zu übersetzen
    Ich suche das Wort für jene Art Funktionen/Librarys, die mir das öffnen solcher Dateien erlauben, damit ich nach Tutorials suchen kann, ein solches selbst zu schreiben.
    ggF, falls einer ein solches kennt, direkt der Link zu einem guten Tutorial.

    Beitrag zuletzt geändert: 22.12.2009 10:45:00 von frodo89
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Hallo,

    Reichen die Informationen die hier gegeben sind aus, um eine Datei zu decodieren?

    beim Querlesen des Dokuments sind mir folgende Punkte aufgefallen:
    - keine Angabe zur "checksum" (vermutlich simple Addition mod 65536; kein CRC?)
    - Zeitstempel: Bruchtteile von Tagen? (vermutlich ähnlich wie bei Excel?)
    - mehrere Versionen: hoher Aufwand, wenn man alle Versionen unterstützen möchte
    - variable "Endiness": kann den Aufwand verdoppeln, wenn man mehrere Plattformen im Sinn hat
    - ModuleAdditionalDataStruct: klingt so, als könne da jeder Hersteller machen, was er will --> Doku-Problem, evtl. Lizenz-Probleme
    - geringe Komplexitätserhöhung in Phase 1) (s.u.) durch optionale Werte und listen komplexerer Konstrukte

    Man kann die Sache in zwei Phasen angehen:
    1.) Zerlegen der Datei unter Kenntnis der Struktur und der einfachen Datentypen (uint, int, char[], etc.)
    2.) Interpretation und Darstellung (XML?) der Daten.

    Den ersten Teil kann man ziemlich direkt umsetzen.
    Beim 2. Teil solle man Kenntnisse aus der Problemdomäne besitzen. Ob das alles dokumentiert ist?

    Zum Testen wäre es sinnvoll, wenn man Beispiele von korrekt kodierten Dateien hätte (konnte ad-hoc keine finden).

    Nun zur eigentlichen Frage: Bin kein Python-Experte, aber in Perl würde man auf pack/unpack zurückgreifen und unter Windows auf den 'binary' Mode beim lesen der Files achten - oder gleich mit sysread() arbeiten.

    Scheinbar kennt Python das auch:
    pack/unpack: http://docs.python.org/library/struct.html
    files (mode: 'rb'): http://docs.python.org/library/functions.html#open

    HTH

  4. Autor dieses Themas

    frodo89

    Kostenloser Webspace von frodo89

    frodo89 hat kostenlosen Webspace.

    Danke, ich werd mal sehen, ob ich damit zurecht komme.
    Bei weiteren Fragen meld ich mich wieder

    lg,


    Beitrag zuletzt geändert: 23.12.2009 15:14:45 von frodo89
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!