AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Typisierte Dateien nicht möglich?

Ein Thema von greenmile · begonnen am 23. Mai 2014 · letzter Beitrag vom 25. Mai 2014
Antwort Antwort
Seite 3 von 5     123 45      
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#21

AW: Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 19:18
SQLite ist ein absolut legitimer Vorschlag, denn auch wenn du damit nicht arbeiten möchtest, ist es trotzdem auf den Geräten schon vorhanden. Es ist ein fester Bestandteil der Systeme (Android/iOS).
Cool, das wusste ich jetzt wirklich noch nicht.

Geändert von greenmile (23. Mai 2014 um 19:29 Uhr)
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#22

AW: Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 19:36
Um das vielleicht noch einmal klarzustellen: Man kann sich Gedanken machen. Und man kann sich überflüssige Gedanken machen. Meist macht man das in dieser Reihenfolge.
Nun ja ... meinst Du nicht dass ich sehr genau weiss, was ich tue? Ich bin etwas länger in der Programmierung
... Ehrlich gesagt, wenn Du so direkt fragst: Nein. Wenn Du wirklich lange genug bei der Programmierung wärst, dann hätte Dir auffallen müssen, das sich die Erde weitergedreht hat und man sich darüber nicht unbedingt mehr Gedanken macht, zumal man auf dieser Ebene auch nicht mehr programmiert (normalerweise).

Aber darum ging es nicht und darum geht es nicht. Es geht darum, die Standardwerkzeuge zu verwenden, die einem die Umgebung, in der man und für die man programmiert, bietet. Meist wissen Programmierer nicht, was Standard ist, weil sich sich nicht diesbezüglich schlau machen oder einfach meinen, alles selbst machen zu müssen. Aber das Allerwichtigste, wenn man sich in einem neuen Umfeld bewegt ist doch die Beantwortung der Fragen: "Wie machen das die Anderen?", "Was ist Stand der Technik?", "Was ist usus?" Wenn diese Fragen beantwortet sind, kann man ja immer noch entscheiden, ob man seinen eigenen Weg geht, oder Standards verwendet.

Und abschließend: Nichts von dem ist böse gemeint oder auf Angriff gebürstet, auch wenn es direkt ist. Schönes Wochenende.
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#23

AW: Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 19:54
Belassen wir es besser dabei. Bitte repektiere, wenn manche Menschen manche Probleme anders lösen. Es ist mitunter nicht schlechter, nicht besser, sondern einfach anders und manchmal denken sich diese Menschen etwas dabei.
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#24

AW: Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 20:20
Ich muss hier auch mal in die gleiche Kerbe hauen
Typisierte Dateien, also Dateien mit fester Satzstruktur sind eine Sackgasse
Das wurde schon vor 1980 erkannt als das dBase-Format entwickelt wurde.
dBase-Dateien haben im Prinzip eine feste (aber änderbare) Satzstruktur nur dass sich davor noch ein Header befindet der jedes einzelne Datenfeld (Name, Datentyp und ggf. noch Länge oder Nachkommastellen) maschinenlesbar erklärt.
Die zweite geniale Idee von dBase ist jeden Datensatz grundsätzlich mit einem Delete-Flag auszustatten damit man Datensätze (=Records) löschen kann ohne die ganze Datei neu erzeugen zu müssen.
dBase hat damit den Mindeststandard für tabellenartige Dateien gesetzt.
Darunter kommt als akzeptables Format nur noch CSV (und eigentlich ist das nur ein Datenaustauschformat und kein Datenformat mit dem man effizient arbeiten kann).

SQLite hat sich vom Spielzeug zu einem ausgereiften Datenspeicher entwickelt.
Der Overhead liegt pro SQLite-Datei bei ca 220kB und ca. zusätzlichen 400kB Programmcode (wenn der SQLite-Code statisch gelinkt wird).
Wenn du nach typisierten Dateien fragst ist das ungefähr so als ob du Infos über Waschbretter haben möchtest obwohl es seit Jahrzehnten gute Waschmaschinen gibt

Noch ein Tipp zu SQLite:
Hol dir den SQLite Manager für den Firefox Browser - damit kannst du SQLite Dateien perfekt anlegen, ändern, untersuchen, usw.

@greenmile: sorry aber ich hatte meinen Beitrag schon fertig und manchmal muss man eben was loswerden
fork me on Github
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#25

AW: Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 20:27
SQLite ist ein absolut legitimer Vorschlag, denn auch wenn du damit nicht arbeiten möchtest, ist es trotzdem auf den Geräten schon vorhanden. Es ist ein fester Bestandteil der Systeme (Android/iOS).
Cool, das wusste ich jetzt wirklich noch nicht.
http://www.delphipraxis.net/1259959-post9.html
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.130 Beiträge
 
Delphi 10.3 Rio
 
#26

AW: Typisierte Dateien nicht möglich?

  Alt 24. Mai 2014, 09:58
Hallo,


Delphi-Quellcode:
Type
  TIrgendwas = Record
    Text1: String[25];
  End;
Nimm einfach
Delphi-Quellcode:
Type
  TIrgendwas = Record
    Text1: Array[0..25] of Byte;
  End;
Fertig...
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#27

AW: Typisierte Dateien nicht möglich?

  Alt 24. Mai 2014, 10:06
Seufz:
http://www.delphipraxis.net/1259922-post1.html
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.163 Beiträge
 
Delphi 12 Athens
 
#28

AW: Typisierte Dateien nicht möglich?

  Alt 24. Mai 2014, 10:26
Wieso Byte?
Ich denk dort soll ein String rein, mit vielen Chars.

Delphi-Quellcode:
type
  TMyRecord = record
    MyInteger: Integer;
    _MyString: array[0..24] of AnsiChar; // UTF8-codiert
    ...
  private
    function GetMyString: string; // hier drin UTF8Encode/UTF8Decode und die Zuweisung an/von _MyString
    procedure SetMyString(Value: string);
  public
    property MyString: string read GetMyString write SetMyString;
  end;
Delphi-Quellcode:
type
  TMyRecord = record
    MyInteger: Integer;
    _MyString: array[0..24] of Char;
    ...
  private
    function GetMyString: string; // hier drin die Zuweisung an/von _MyString
    procedure SetMyString(Value: string);
  public
    property MyString: string read GetMyString write SetMyString;
  end;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (24. Mai 2014 um 10:34 Uhr)
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#29

AW: Typisierte Dateien nicht möglich?

  Alt 24. Mai 2014, 10:47
Wer spricht hier von Bytes? Der Link im Link? Es werden dort alle Möglichkeiten aufgezeigt, einen ShortString zu ersetzen und dazu gehört neben dem Array of Char eben auch RawBytes, wobei ich letzteres vorziehe, weil ich neuerdings bei 'Char' immer an 'Zeichensätze' und 'Konvertierung' denke. Muss nicht sein, aber bei 'RawBytes' denke ich nicht daran.
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#30

AW: Typisierte Dateien nicht möglich?

  Alt 25. Mai 2014, 07:26
Ich löse es jetzt in dem Fall anders. Habe mir, völlig ab davon, wegen einem anderen Projekt mal SQLITE angeschaut. Es gibt allerdings vier Fragen oder Punkte, über die ich gestolpert bin:

- Was muss ich an DLL's mitgeben? Die SQLITE3.DLL auf Windows Systemen ins Programm-Verzeichnis? Und bei Android/iOS/MacOS?
- Wie kann ich eine einmal definierte Tabelle im Designer (Delphi IDE, Menü "Ansicht" / "Daten-Ansicht") erweitern? Ich habe ein Feld vergessen und die DB ist noch leer ...
- Wo definiere ich im Designer (Delphi IDE, Menü "Ansicht" / "Daten-Ansicht") die Länge eines Text-Feldes?
- Wo definiere ich im Designer (Delphi IDE, Menü "Ansicht" / "Daten-Ansicht"), dass es sich z.B. um ein BOOL Feld handelt?

Oder geht das nur mit externen Tools? Oder nur mit SQL? Oder garnicht?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 5     123 45      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:34 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