Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi untypisierte Datei - Verständnis (https://www.delphipraxis.net/29056-untypisierte-datei-verstaendnis.html)

frea 3. Sep 2004 11:17


untypisierte Datei - Verständnis
 
Hallo Gemeinde,
ich möchte gern eine untypisierte Datei erstellen mit der Endung *.tsf
In die Datei sollen Koordinaten von Punkten und ein jeweils dazugehöriger Wert abgespeichert werden, etwa in der Form:
x1 y1 wert1
x2 y2 wert2
...
Es soll des weiteren eine ASCII-Datei sein.
Nun weiss ich nicht so recht, was eine ASCII-Datei ist und wie diese Datei aussehen würde, wenn ich sie mit dem Windows-Editor öffnen würde.
(Diese Datei soll dann in ein anderes Programm eingelesen werden).

Wie ich eine solche Datei erstelle, weiss ich:

Delphi-Quellcode:
var
  f:file
begin
 AssignFile(f,'Datei.tsf');
 ReWrite(f,1);
 ...
Aber wie ich mit dem BlockWrite-Befehl umgehen soll, weiss ich nicht so recht.
Kann ich in die Datei zeilenweise meine Daten xi yi werti eintragen?

Über ein paar Tips würd mich mich riesig freuen. Danke!
frea :coder2:

mytar 3. Sep 2004 11:22

Re: untypisierte Datei - Verständnis
 
Du könntest das ganze auch mit Streams realisieren!

Siehe dazu folgenden Link an:
Tutorial: Streams

ibp 3. Sep 2004 11:42

Re: untypisierte Datei - Verständnis
 
wie sollen denn die daten in der datei stehen? sicherlich zeilenweise und wie sollen die werte voneinander getrennt sein, mit einem festen bereich oder einem sperator?

Luckie 3. Sep 2004 11:47

Re: untypisierte Datei - Verständnis
 
Typisiertedateien wäre hier wohl sinnvoller, da einfacher zu handhaben. Mach dir einen Record für die Daten und schreib diesen in die Datei. Wenn du willst, kannst du dafür meine Klasse dafür verwenden: TTypedFiles.zip.

frea 3. Sep 2004 12:00

Re: untypisierte Datei - Verständnis
 
hallo,

Zitat:

Zitat von ibp
wie sollen denn die daten in der datei stehen? sicherlich zeilenweise und wie sollen die werte voneinander getrennt sein, mit einem festen bereich oder einem sperator?

Also zunächst sollen die Punkte und Werte zeilenweise in der Datei stehen, getrennt durch einen festen leeren Bereich.
Unter dieser "Matrix" soll noch eine andere Auflistung von Zahlen folgen, wieder drei hintereinander durch einen festen leeren Bereich getrennt auf einer Zeile.
Da es sich hier um ganz andere Daten handelt, dachte ich, eine typisierte Datei macht keinen Sinn..

ibp 3. Sep 2004 12:03

Re: untypisierte Datei - Verständnis
 
..und wie liegen die daten vor, dh. werden diese eingegeben?

frea 3. Sep 2004 12:13

Re: untypisierte Datei - Verständnis
 
Die Daten (x-,y-Koordinaten und zugehörige Werte) liegen als Fließkomma-Zahlen vor und werden weiter oben in meinem Programm aus einem komplizierten Input-File ausgelesen. Die darunter folgenden Werte sind Integer-Werte, ebenfalls aus der Input-Datei ausgelesen.
Zum Verständnis:
Die x-,y-Koordinaten sind Punkte eines FEM-Netzes (das besteht ausschliesslich aus Dreiecken) und die Werte sind Messgrößen an diesen Netzpunkten.
Die Auflistung der Integerzahlen darunter gibt die Indizees der Netzpunkte an, die zu einem Dreieck im Netz gehören.

ibp 3. Sep 2004 12:19

Re: untypisierte Datei - Verständnis
 
nun habe ich mich nicht ganz klar ausgedrückt, wie speicherst du die daten in deinem programm ?

frea 3. Sep 2004 12:27

Re: untypisierte Datei - Verständnis
 
Die Daten stehen in Arrays.

MacGuyver 3. Sep 2004 12:44

Re: untypisierte Datei - Verständnis
 
Moin frea :hi:

Was ist das für ein Array? Das müßten dann zwei verschiedene Arrays sein, oder? Mit festen Abständen kommst du locker in Problemzonen. Da nimm mal lieber ein Trennzeichen. Da ist ";" ein gängiges Zeichen. Beim Schreiben brauchst du nur Wert1 + ';' + Wert2 + ';' + WertN in die Datei schreiben. Zum Auslesen nimmst du die Position mit Pos(';',String) und führst auf den Bereich StrToIntDef aus. Lesen und Schreiben aus einer Datei vom Typen TextFile. Eine Textdatei hat ein Textformat während eine untypisierte datei irgendwie organisiert werden muß. Durch Header, Indexe oder Längenangaben. Wenn es nicht Millionen Punkte sind und die Zeit drängt ist eine entsprechende Textdatei eine gute Wahl.

Ein datenbankfreier :-D

Stefan.

frea 3. Sep 2004 12:50

Re: untypisierte Datei - Verständnis
 
Hi,
ja das sind zwei verschiedene Arrays..
Ich kann aber leider kein Text-File schreiben, da ich das Ausgabefile mit Suffix tsf brauche und im ASCII-Format!

frea

MacGuyver 3. Sep 2004 13:03

Re: untypisierte Datei - Verständnis
 
Aha,

Zitat:

Ausgabefile mit Suffix tsf brauche und im ASCII-Format!
Dann schein die ASCII-Datei auch ein Format zu haben. Eine ASCII-Datei zeichnet sich dadurch aus, daß am Ende #13#10 enthalten ist und den ASCII-Zeichensatz verwendet. Weitere Anforderungen werden meist von Softwareherstellern gestellt? Gibt es eine Spezifikation?

Stefan

ibp 3. Sep 2004 13:07

Re: untypisierte Datei - Verständnis
 
ascii bezieht sich ja auf den zeichensatz glaube 128 zeichen unicode und ich denke, daß deine datei damit ein "textfile" ist. daher einfach: schreib deine arrays in ein memo oder stringlist und mit savetofile abspeichern

frea 3. Sep 2004 13:17

Re: untypisierte Datei - Verständnis
 
Hm...
zumindest sollten die Einträge in diese Datei ganz normal lesbar sein, wenn man sie mit dem Windows-Editor öffnet. Das spricht wohl für eine Text-Datei. Im Übrigen kann ich die ja auch mit einem anderen Suffix versehen.

Ich versuchs jetzt mal damit und sehe zu, ob eine so hergestellte tsf-Datei in das Programm importierbar ist.
Falls nicht, werde ich mich sicher nochmal melden ;-)
frea


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:19 Uhr.

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