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 1 von 2  1 2      
greenmile

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

Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 11:10
Hallo,

ich bin gerade dabei, testhalber einige kleinere Anwendungen auf Firemonkey zu portieren um zu testen, inwiefern FM inzwischen produktiv einsetzbar ist.

Unter Windows verwende ich typisierte Dateien:

Code:
Type
  TIrgendwas = Record
    Text1: String[25];
  End;

var Testdatei: File of TIrgendwas;
Beim compilieren bekomme ich unter FM/Android jedoch die Fehlermeldung "; erwartet, [25] gefunden". Funktioniert das so unter FM / Android nicht?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 11:18
Der neue LLVM basierte Compiler kenntz keine ShortStrings

http://docwiki.embarcadero.com/RADSt...om_Desktop_aus
Markus Kinzler
  Mit Zitat antworten Zitat
greenmile

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

AW: Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 11:19
Ok, aber was verwende ich bei typisierten Dateien dann? Ich muss ja eine String-Länge definieren.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 11:22
In dem Artikel wir Array Of Char vorgeschlagen oder halt RawByteStrings:

http://andy.jgknet.de/blog/2013/10/t...-byte-strings/
Markus Kinzler
  Mit Zitat antworten Zitat
greenmile

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

AW: Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 11:34
Grmmmpff.
Danke für die Info
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Typisierte Dateien nicht möglich?

  Alt 23. Mai 2014, 11:39
LongStrings und dymanische Arrays ja, dann aber nicht mehr in einem Record.

Du kannst maximal ein statisches Char-Array in den Record packen und über Record-Methoden/Property einen Stringzugriff darauf implementieren.

Oder du steigst auf Datenobjekte um und bastelst dir dafür entsprechende Speicherroutinen (hier kannst du z.B. auch TReader/TWreiter verwenden)
oder du nimmst persistente Datenopjekte und probierst es mit den entsprechenden Serialisierungsfunktionen der Streams, bzw. direkt über TReader/TWriter.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (23. Mai 2014 um 11:42 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

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

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
 
#8

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.187 Beiträge
 
Delphi 12 Athens
 
#9

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
 
#10

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
Antwort Antwort
Seite 1 von 2  1 2      


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 14:04 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