Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   untypisierte dateien (https://www.delphipraxis.net/150104-untypisierte-dateien.html)

khh 7. Apr 2010 13:28


untypisierte dateien
 
hallo zusammen,
ich steh grad auf dem Schlauch.

Ich hab ne Datei in der diverse Datensätze stehen.
jeder DS belegt 1024 Byte.
Wie würdet Ihr diese Sätze in eine Datei mit Feldtrennern überführen, damit diese später in eine DB geschrieben werden können.
Hab mall ne Ansatz mit blockread gefunden, denke aber das muss doch irgendwie einfacher zu bewerkstelligen sein.

Danke Gruss KH

Klaus01 7. Apr 2010 13:30

Re: untypisierte dateien
 
Hallo,

ich würde mir ein Record (mit den entsprechenden Feldern) bauen
und die Datensätze damit einlesen.

Grüße
Klaus

khh 7. Apr 2010 13:33

Re: untypisierte dateien
 
Zitat:

Zitat von Klaus01
Hallo,

ich würde mir ein Record (mit den entsprechenden Feldern) bauen
und die Datensätze damit einlesen.

Grüße
Klaus

also mit blockread die ganzen 1024 byte einlesen, aber wie dann weiter?

himitsu 7. Apr 2010 13:36

Re: untypisierte dateien
 
Zitat:

Zitat von khh
aber wie dann weiter?

Woher sollen wir das wissen?

Zitat:

Wie würdet Ihr diese Sätze in eine Datei mit Feldtrennern überführen
Vorallem ohne Kenntnis des Aufbaus dieser Blöcke.


Aber "einfach" die Daten in dan gewünschte Format konvertieren und neu abspeichern? :gruebel:


Entweder du ließt die Blöcke stückchenweise aus (also direkt die einzelnen Felder)
oder du erstellst dir einen Record, über welchen du diese Daten dann eventuell zerlegen könntest.

Klaus01 7. Apr 2010 13:41

Re: untypisierte dateien
 
nein, blcokread meinte ich nicht.

Ein Datensatz hat bestimmte Datenfelder.
Diese Felder kannst Du im Record nachbauen.
Delphi-Quellcode:
type
  TDatensatz = record
     NName : String[25];
     VName : String[25];
     ..
  end;


...

var
  datensatz: TDatensatz;
  datenFile: File of TDatensatz;

begin
  assignFile(..);
  reset(datenFile);
  while not eof(datenFile) do
    begin
      read(datenFile,datensatz);
      //verschiebe datensatz in Datenbank
      datensatz.NName -> Datenbank
      datensatz.VName -> Datenbank
   end;
  closeFile(datenFile);
end;
Grüße
Klaus

khh 7. Apr 2010 13:42

Re: untypisierte dateien
 
ich danke euch für den Ansatz.

Gruss KH

Bernhard Geyer 7. Apr 2010 21:42

Re: untypisierte dateien
 
Zitat:

Zitat von Klaus01
ich würde mir ein Record (mit den entsprechenden Feldern) bauen
und die Datensätze damit einlesen.

Sobald längere strings (unwahrscheilich) oder Unicode-Text beteiligt ist, wird das nicht mehr funktionieren.

DeddyH 8. Apr 2010 08:10

Re: untypisierte dateien
 
Zitat:

Zitat von khh
jeder DS belegt 1024 Byte.

Das klingt aber nicht danach.

khh 8. Apr 2010 08:33

Re: untypisierte dateien
 
Liste der Anhänge anzeigen (Anzahl: 1)
der DS ist nicht grösser als 1024 byte, aber der Zeichensatz, bzw. die Sonderzeichen machen Probleme.
Ich hänge hier mal eine Datei mit einem DS an.

Gruss KH

EDIT: ist keine txt datei, habe die Endung nur so vergeben, weil ne dat nicht hochzuladen ging.

Klaus01 8. Apr 2010 08:43

Re: untypisierte dateien
 
Guten Morgen,

hast Du auch eine Beschreibung zu dem Datensatz?

Grüße
Klaus


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:15 Uhr.
Seite 1 von 4  1 23     Letzte »    

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