AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Lange Strings im Record

Ein Thema von oldmann · begonnen am 22. Mär 2009 · letzter Beitrag vom 23. Mär 2009
Antwort Antwort
Seite 2 von 3     12 3   
Benutzerbild von himitsu
himitsu
Online

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

Re: Lange Strings im Record

  Alt 22. Mär 2009, 10:51
joar, Delphi achtet da zumindestens schön drauf ^^

aber das es sich um einen Record für eine Datei handelt, hättest du schon sagen müssen.

solange du mit den "alten" Pascal-Functionen arbeitest, ist für die das Char-Array die einzige Möglichkeit.

bei z.B. TSream-Nachkommen könnte man String/AnsiString verwende, müßte aber den Stringinhalt selbst speichern (z.B. als String mit abschließender #0, zur Begrenzung
oder indem man die Stringlänge vorher mit speichert ... beispiele gibt's da genügend im Forum)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
oldmann

Registriert seit: 10. Okt 2008
Ort: Weyhe
138 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#12

Re: Lange Strings im Record

  Alt 22. Mär 2009, 11:24
Hallo Leute,
das sind ja viele Antworten auf einmal.
Erst einmal danke dafür.
Erste Frage: Was sind Delphi Tags?
Wenn ich das bisher richtig verstanden habe wird es nur wie im ersten Beitrag beschrieben mit:
'bemerkung:Array[1..1024] of AnsiChar;' gehen.
Da ich mich damit überhaupt nicht auskenne wäre ich Euch für ein wenig Hilfestellung dankbar.
Wie speichere ich ein solches Array in meiner typisierten Datei?
Wie lesen ich das Array wieder aus der Datei aus und zeige es in einem Memo an?

Ich wäre Euch für ein paar Beispiele, die auch ich verstehen kann, dankbar.

Gruss Oldmann
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#13

Re: Lange Strings im Record

  Alt 22. Mär 2009, 11:33
Über dem Editor-Fenster hier im Forum gibt es den Button "Delphi-Code". Cursor vor den Code setzen "Klick" und dann Cursor ans Ende des Code "Klick". Du siehst dann wie die Tag's aussehen und kannst die später auch manuell setzen.

In deinem Record ersetzt Du einfach String[255] durch Array[1..1024] of AnsiChar. Der Rest bleibt so wie es war...

Einfach mal ausprobieren, wenn Du eine Stelle hast, wo der Austausch Probleme macht, einfach nochmal gezielt nachfragen.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

Re: Lange Strings im Record

  Alt 22. Mär 2009, 11:39
Zitat von Satty67:
Über dem Editor-Fenster hier im Forum gibt es den Button "Delphi-Code". Cursor vor den Code setzen "Klick" und dann Cursor ans Ende des Code "Klick".
oder Code markieren ein dann nur einmal auf den Button klicken


Ach ja ... nur zum Verständnis: (bis D2007)

String = AnsiString
String[x] = ShortString

und ein ShortString kann nur 0 bis 255 Zeichen enthalten, da er für die Längenangabe ein Byte Verwendet.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#15

Re: Lange Strings im Record

  Alt 22. Mär 2009, 11:52
Mach aus dem Record eine Klasse. In der Klasse kannst du dann eine Metohde implementieren zum Speichern der Felder. Das wäre dann auch eine saubere OOP Lösung. Als Datenformat würde ich dann, wenn es nicht viele Daten sind eine Ini-Datei nehmen oder, wenn es ein paar mehr Daten sind, eine XML-Datei.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#16

Re: Lange Strings im Record

  Alt 22. Mär 2009, 12:02
Ob das oldman's aktuelle Fähigkeiten nicht übersteigt? Er sollte es lernen (früher als z.B. ich), aber ein Erfolgserlebnis mit seinem aktuellen Code ist auch ganz schön.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#17

Re: Lange Strings im Record

  Alt 22. Mär 2009, 12:18
Ich weiß nicht, wie weit fortgeschritten oldman ist. Aber eventuell hilft es ja anderen die weiter fortgeschritten sind und vor dem gleichen Problem stehen.

Es heißt übrigens "oldmans". Im deutschen gibt es das besitzanzeigende Apostroph nicht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#18

Re: Lange Strings im Record

  Alt 22. Mär 2009, 13:07
Ok, OK... sah für mich wohl bei dem englischen Wort einfach besser aus

Ich hab' mir schon ein paar kleine Klassen gebastelt (seit der letzten Aufforderung hier im Forum). Klappt auch so langsam ganz gut. Den praktischen Nutzen bei bestimmten Aufgaben (besonders wenn Daten im Spiel sind) weis ich inzwischen auch zu schätzen.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#19

Re: Lange Strings im Record

  Alt 22. Mär 2009, 13:29
Na ja, der Vorteil eine Klasse ist eben, dass man die Daten und die Methoden, die diese Daten manipulieren, zusammen hat.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
oldmann

Registriert seit: 10. Okt 2008
Ort: Weyhe
138 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#20

Re: Lange Strings im Record

  Alt 22. Mär 2009, 16:06
Hallo Leute,
das sind viele Antworten.
Erst einmal danke dafür.
Allerdings hatten die letzten 4 Antworten überhaupt nichts mehr mit dem Thema zu tun.
Mein Problem ist bisher nicht gelöst.
Also frage ich noch einmal.
Bisher habe ich verstanden das ich die Variable 'bemerkung' im Record als 'Array[1..1024] of AnsiChar' benennen muss.
Da ich mich damit überhaupt nicht auskenne wäre ich Euch für ein wenig Hilfestellung dankbar.
Wie speichere ich ein solches Array in meiner typisierten Datei?
Wie lesen ich das Array wieder aus der Datei aus und zeige es in einem Memo an?


Es wird doch unter Euch sicher Experten geben die mir hier weiterhelfen können.

Ich wäre Euch für ein paar Beispiele, die auch ich verstehen kann, dankbar.

Gruss Oldmann
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 11: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