Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Indirekt: Strings vergleichen (inside more) (https://www.delphipraxis.net/8107-indirekt-strings-vergleichen-inside-more.html)

Minz 30. Aug 2003 19:57

Re: Indirekt: Strings vergleichen (inside more)
 
Rein Interessehalber:

ist es besser char[20] zu nehmen als String?

Ich hätte jetzt strings genommen!

Das ein String ein array of char ist, hab ich schon gehört,
aber hat das ganze jetzt auch eine praktische bedeutung? Oder ist es völlig egal ob ich char oder string nehme?


Achso und die Datenbank soll echt schneller sein als ein Array?
Ich dachte da Datenbank gleichbedeutend mit Festplattenzugriff ist, obwohl wenn die komplett gecached wird... :coder:

fkerber 30. Aug 2003 19:58

Re: Indirekt: Strings vergleichen (inside more)
 
Zitat:

Zitat von Minz
3. Dynamischer Array oder Datenbank ein problem?

Ein bisschen schon, hab mal grad Hansa's Code probiert, bekomme aber folgende Fehlermeldungen:

Zitat:

[Error] Unit1.pas(36): Incompatible types: 'procedure, untyped pointer or untyped parameter' and 'String'
[Error] Unit1.pas(37): Incompatible types: 'Char' and 'String'
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
Wie krieg ich das denn in ne Datenbank?

ciao und danke für eure hilfe

fkerber

fkerber 30. Aug 2003 20:04

Re: Indirekt: Strings vergleichen (inside more)
 
Hi!

Konnte Hansas Code doch zum laufen bringen. Danke dafür schonmal!
Und wie krieg ich jetzt raus, ob ein Wort in dem Array ist?

Ciao fkerber

Hansa 30. Aug 2003 20:06

Re: Indirekt: Strings vergleichen (inside more)
 
char (20) war ein Tipfehler, das sollte string [20] heißen. Und das Stück Code ist ein ganzen Programm und auch nur ein schnell getipptes Beispiel.

Minz 30. Aug 2003 20:07

Re: Indirekt: Strings vergleichen (inside more)
 
Code:
procedure FormingAltDic;
var altDic: textfile;
     s:string;
     woerter: array of string;
begin
  assignfile(altDic, 'de_DE.dic');
  reset(altDic);

  while not eof(altDic) do begin
     readln(altDic, s);
     SetLength(woerter, length(woerter)+1);
     woerter[high(woerter)]:=s;
  end;

  closefile(altDic);
end;

Im Array woerter sollten jetzt alle Zeilen verfügbar sein.
Habsch aber net getestet!

Hansa 30. Aug 2003 20:08

Re: Indirekt: Strings vergleichen (inside more)
 
die Wörter kriegst Du mit pos raus -> Lesen :!:

Minz 30. Aug 2003 20:10

Re: Indirekt: Strings vergleichen (inside more)
 
Ähm hast du die Wörter schon von ihren Anhängseln getrennt??

MSCH 30. Aug 2003 20:24

Re: Indirekt: Strings vergleichen (inside more)
 
Apropos, die Suche über das Array (ich würd das eher dynamisch machen)
wirst du wohl sequenziell machen dürfen, da hier jedweder Sortieralgo fehlt, und bei jedem Wort, ein Array[von 0 bis was_weis_ich_wie_weit] abzugrasen ist verry bad code:
Auch gehts noch einfacher mit einer StringList, die kann man sogar sortieren:
Delphi-Quellcode:
MyStringList:= TStringList.Create;
MyStringList.LoadFromFile('C:\irgentwas.txt');
grez
msch

Hansa 30. Aug 2003 20:27

Re: Indirekt: Strings vergleichen (inside more)
 
das dynamische war die verkettete Liste, aber ein Stringgrid wäre tatsächlich das einfachste.

fkerber 30. Aug 2003 20:32

Re: Indirekt: Strings vergleichen (inside more)
 
Hi!

Nein, hab sie noch nicht von den Anhängseln getrennt. Ne idee, wie ich das am einfachsten machen kann. Wenn ein Anhängsel da ist, wird es mit \ vom Wort getrennt.

Sollte ich es jetzt am besten mit array machen oder anders?

Zitat:

Zitat von Hansa
die Wörter kriegst Du mit pos raus -> Lesen

Kann jetzt damit grad nix anfangen, kannst du das etwas näher erläutern?

Ciao und danke schonmal


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:53 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz