Announcement

Collapse
No announcement yet.

Dateizugriff

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Dateizugriff

    Hallo!

    Ich habe eine Prozedur geschrieben, mit der eine Datei vom Typ BOOLEAN mit AssignFile angewählt wird. Wenn ich die Datei dann jedoch mit ReSet öffnen will, dann gibt er mir den E/A-Fehler 123. Ich habe auch schon mit FileMode rumprobiert und der Datei anderen Typen zugewiesen. Immer wieder kriege ich den E/A-Fehler. Kennt jemand eine Lösung dafür?

  • #2
    Poste mal bitte den code...

    Comment


    • #3
      Hab's doch hingekriegt, dass der Fehler nicht mehr kommt und er die Datei auch abarbeitet. Hatte nur einen falschen String übergeben. Aber ich wollte die Datei eigentlich binär öffnen und Bit für Bit abarbeiten. Das geht mit dem Typ BOOLEAN jedoch nicht. Der Boolean belegt auch immer einen ganzen Byte. Ich will aber Bit!!!! Wie kann ich auf jeden einzelnen Bit zugreifen

      Comment


      • #4
        Na da musst du halt lernen mit Bits umzugehen. Ansonsten besorg die Jedi Code Library (http://sourceforge.net/projects/jcl). Dort sind einige Funktionen zur Bitbehandlung enthalten

        Comment


        • #5
          Mit Bits kann ich umgehen. Ich habe meine Prozedur auch schon so erweitert, dass ich mit Bits rechnen kann. Aber irgendwie verstehe ich Delphi nicht. Ich habe eine Datei, in der 11 Werte gespeichert werden. Die Werte können 5 verschieden Zuständen haben. Wenn ich jedoch eine Datei erstellt habe und die Werte in die Datei schreiben will, dann wird die Datei statt 11 Byte (Datei und Werte sind Bytes) mehrere 100 Byte groß. Und wenn ich die Datei mit einem HEX-Editor öffne, dann haben die Bytes dort ganz andere Werte. Kann Delphi nicht ganz normale Bytes (0 - 255) speichern

          Comment


          • #6
            Neben den eigentlich Daten werden (je nach verwendetem Win-Version) zusätzliche Informationen in der Datei gespeichert. Dadurch wird sie Größer. Auch wie du die Datei Speicherst ist ausschlaggebend.

            Probiers mal mit den Prozeduren BlockRead/Blockwrite

            Gruß Uw

            Comment

            Working...
            X