Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Wieder TextDatei diesmal binär (https://www.delphipraxis.net/159805-wieder-textdatei-diesmal-binaer.html)

EWeiss 13. Apr 2011 14:42

Wieder TextDatei diesmal binär
 
Kann mir kurz jemand nen tip geben wie ich meine
werte binär in eine TextDatei schreibe?

Delphi-Quellcode:
  // Datei schreiben
  AssignFile(f, MidiFile);
  Rewrite(f);

  for IntA := 1 to CurrentByte do
  // Was fehlt hier... vor "IntA, Bytes[IntA]"
  // Seek oder was auch immer..

  Closefile(f);
gruss

DeddyH 13. Apr 2011 14:51

AW: Wieder TextDatei diesmal binär
 
Was meinst Du denn mit binär? In der Form '00011111' oder Hexadezimal oder wie? Zeig doch mal ein Beispiel, wie die Datei aussehen soll.

Satty67 13. Apr 2011 14:56

AW: Wieder TextDatei diesmal binär
 
wenn es nur darum geht, ein Array of Byte zu speichern, wäre vieleicht Delphi-Referenz durchsuchenBlockWrite ganz brauchbar.

Bin aber nicht sicher, ob das mit einem TEXT-Handle geht.

ConnorMcLeod 13. Apr 2011 15:01

AW: Wieder TextDatei diesmal binär
 
TEXT-Datei BINÄR beschreiben? Bin das nur ich oder sieht da noch jemand einen Widerspruch?

Klaus01 13. Apr 2011 15:02

AW: Wieder TextDatei diesmal binär
 
Hallo Emil,

mit einem Textfile ist das eher schwieriger (unterstüzt auch kein seek).
Besser wäre es, wenn Du bei den Pascal Routinen bleiben willst, die Datei
als file of Byte oder file of Char zu deklarieren.

Grüße
Klaus

EWeiss 13. Apr 2011 15:08

AW: Wieder TextDatei diesmal binär
 
Zitat:

Zitat von DeddyH (Beitrag 1094863)
Was meinst Du denn mit binär? In der Form '00011111' oder Hexadezimal oder wie? Zeig doch mal ein Beispiel, wie die Datei aussehen soll.

Ich habe sie jetzt abgespeichert.
Zitat:

77841041000006010904877841141070001902558137161320 25588442248025547077841141070003101920014436127121 28360014412812712144128
12712144361271212836002554707784114107000348255470 77841141070003482554707784114107000348255470778411 41070003482554707784114
10700034825547077841141070003482554707784114107000 348255470
Aber das ist doch nicht binär?
Wo steht mein Header für das MIDI Format..

Habe es mit
Delphi-Quellcode:
Write(f, Bytes[IntA]);
abgespeichert

Soll ja anstelle für Writeln für binär stehen.

gruss

DeddyH 13. Apr 2011 15:11

AW: Wieder TextDatei diesmal binär
 
Mit TextFile wirst Du da nicht weit kommen. Ich weiß jetzt nicht, wie das MIDI-Format genau auszusehen hat, aber wenn, dann müsste es File of Byte oder sowas sein.

EWeiss 13. Apr 2011 15:14

AW: Wieder TextDatei diesmal binär
 
Zitat:

Zitat von DeddyH (Beitrag 1094869)
Mit TextFile wirst Du da nicht weit kommen. Ich weiß jetzt nicht, wie das MIDI-Format genau auszusehen hat, aber wenn, dann müsste es File of Byte oder sowas sein.

Ich erstelle den Header

Delphi-Quellcode:
      Bytes[CurrentByte] := ord('M');
      inc(CurrentByte);
      Bytes[CurrentByte] := ord('T');
      inc(CurrentByte);
      Bytes[CurrentByte] := ord('r');
      inc(CurrentByte);
      Bytes[CurrentByte] := ord('k');
      inc(CurrentByte);

      CurrentByte := CurrentByte + 4;
Und dieser müßte nachher auch in der Binären Datei Sichtbar sein.
Als MTRK...

Scheint nicht mit TextFile zu gehen.

grrrr...

PS:
Hab mal ein Bild angehängt binär kann ich hier nicht posten.

gruss

alfold 13. Apr 2011 15:24

AW: Wieder TextDatei diesmal binär
 
Was ist mit FileStream?
Ist Binär bleibt Binär und Du kanst den Record original auslesen und speichern!

Gruss alfold

EWeiss 13. Apr 2011 15:31

AW: Wieder TextDatei diesmal binär
 
Zitat:

Zitat von alfold (Beitrag 1094872)
Was ist mit FileStream?
Ist Binär bleibt Binär und Du kanst den Record original auslesen und speichern!

Gruss alfold

Werd es mal versuchen..

gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:00 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz