Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Wie speichert man am besten ein Wörterbuch (https://www.delphipraxis.net/23891-wie-speichert-man-am-besten-ein-woerterbuch.html)

MrKnogge 11. Jun 2004 14:34


Wie speichert man am besten ein Wörterbuch
 
Hallo !

Ich hab ein kleines Übersetzungstool geschrieben, nun möchte ich ein Wörterbuch einbauen.

Aber welches format ist dafür das beste ?

Ich dachte erst an eine ini-file, aber dort ist die größe ja leider begrenzt. Bei einem eigenen Dateityp müsste ich dann für schnelle Zugriffe einen Index anlegen.

Am perfektesten wäre ja fast eine Datenbank, aber ich möchte es keinem Zumuten wegen so einem kleinen tool gleich noch Datenbank treiber zu installieren.

Meflin 11. Jun 2004 15:29

Re: Wie speichert man am besten ein Wörterbuch
 
vielleicht wär xml das richtige? ich kenn mich noch nicht wirklich gut damit aus, aber indizieren solte doch möglich sein oder (zumindest geht das mit flash bei xml :-) )

Alexander 11. Jun 2004 17:36

Re: Wie speichert man am besten ein Wörterbuch
 
Ich denke nicht das XML das richtige ist, denn XML ist leider bei größeren Datenmengen doch recht langsam.
Also für eine Wörterbuchdatenbank mit großen Mengen wohl eher nicht geeignet.

Aber wieso unbedingt Datenbanktreiber installieren? Du musst es ja z.B. nicht über die riesige BDE machen, sondern z.B. über ODBC/ADO, das ist eigentlich auf allen Rechnern installiert. Musst dir nur die richtige DB aussuchen, von der auch die Treiber installiert sind.

MrKnogge 11. Jun 2004 18:44

Re: Wie speichert man am besten ein Wörterbuch
 
Danke Alexander, wusste nicht das das ADO ohne irgendwelche Zusätze funktioniert.

Nicolai1234 11. Jun 2004 18:47

Re: Wie speichert man am besten ein Wörterbuch
 
[OT]Wo bekommt man denn ein solches Wörterbuch her?[/OT]

MrKnogge 11. Jun 2004 18:50

Re: Wie speichert man am besten ein Wörterbuch
 
Das wird vom Benutzer erstellt, wenn der Benutzer eine Sprachdatei meiner Programme übersetzt, so "merkt" sich mein Programm alle neuen Wörter.

Alexander 11. Jun 2004 22:53

Re: Wie speichert man am besten ein Wörterbuch
 
Pass aber auf, wenn du ADO/ODBC nutzt. Nicht immer ist die neuste Version installiert und ich weiß jetzt auch gerade nicht wie es mit 9.x aussieht :?
Aber da viele Programme das brauchen, kann man davon eigentlich ausgehen...

PS: Die gesamte NT-REihe hat es auf jeden Fall standardmäßig installiert!

Pr0g 11. Jun 2004 23:02

Re: Wie speichert man am besten ein Wörterbuch
 
Zitat:

Zitat von MrKnogge
Ich dachte erst an eine ini-file, aber dort ist die größe ja leider begrenzt.

Such mal nach Bei Google suchenTBigIniFile, wird wie die Standard TIniFile genutzt, ist jedoch in der Größe nicht begrenzt.

MfG Pr0g

Jörn 11. Jun 2004 23:19

Re: Wie speichert man am besten ein Wörterbuch
 
Vielleicht aber auch einfach eine normale Textdatei, bei der die beiden Sprachen durch ein bestimmtes Zeichen getrennt werden. Dann müsste man die Datei nur einmal durchparsen, und die Begriffreihen in 2 T(Hashed)Stringlists eintragen. Wäre relativ einfach und zügig (zumindest während des Programmablaufs, das einlesen muss man geschickt machen, damit es nicht zu langsam wird).

fkerber 11. Jun 2004 23:19

Re: Wie speichert man am besten ein Wörterbuch
 
hi!

Bei openoffice ist es einfach ne reine Textdatei mit der Endung DIC.

Ciao fkerber

Sharky 12. Jun 2004 07:06

Re: Wie speichert man am besten ein Wörterbuch
 
Zitat:

Zitat von MrKnogge
....Am perfektesten wäre ja fast eine Datenbank, aber ich möchte es keinem Zumuten wegen so einem kleinen tool gleich noch Datenbank treiber zu installieren.

Hai MrKnogge,

schaue Dir doch mal die Absolue Database an. Keine BDE, keine DLL und einfach in Delphi zu benutzen (inkl. SQL-92).

SirThornberry 12. Jun 2004 08:00

Re: Wie speichert man am besten ein Wörterbuch
 
Ich würde eine einfache Textdatei nehmen (TStringlist). Dann diese Eventuell beim Start komplett einlesen und sorted auf True (damit sollte die Suche nach einem wort dann schneller gehen).

Jörn 12. Jun 2004 10:18

Re: Wie speichert man am besten ein Wörterbuch
 
Beim THashedStringList ist das mit sorted := true unnötig. Das Teil ist schnell genug und man würde keinen Geschwindigkeitsunterschied merken. Gibts aber erst seit Delphi 5 oder 6.

Pr0g 12. Jun 2004 13:40

Re: Wie speichert man am besten ein Wörterbuch
 
Zitat:

Zitat von Jörn
Beim THashedStringList ist das mit sorted := true unnötig. Das Teil ist schnell genug und man würde keinen Geschwindigkeitsunterschied merken. Gibts aber erst seit Delphi 5 oder 6.

Was ist der Unterschied zwischen der "THashedStringList" und einer normalen "TStringList"?

MrKnogge 12. Jun 2004 13:42

Re: Wie speichert man am besten ein Wörterbuch
 
Thx !

@Sharky:
Sieht interessant aus, und werd ich mir auf jedenfall mal ansehen. Hast du zufällig irgendwo den Befehlsatz von SQL-92 ?

@Jörn:
THashedStringList kannte ich bisher noch gar nicht, werd ich mir aber sicher mal ansehen !
Sollte ich eine Stringlist bzw. die THashedStringList nehmen, so könnte ich sie zurLaufzeit auch noch in einzelne Buchstaben-bereiche aufteilen, um die Zugriffszeit zu verkürzen.

Jörn 12. Jun 2004 23:53

Re: Wie speichert man am besten ein Wörterbuch
 
Die THashedStringList wird intern irgendwie indexiert, kA was - bin in der OpenGL-Programmierung darauf gestoßen, verwendet man dort gerne um Texturen zu verwalten. Und das muss ja auch schnell gehen :)

Pr0g 13. Jun 2004 00:23

Re: Wie speichert man am besten ein Wörterbuch
 
Also bietet die THashedStringList einen Geschwindigkeitsvorteil bei dem Zugriff, ist also schneller.(?)

Sharky 13. Jun 2004 05:37

Re: Wie speichert man am besten ein Wörterbuch
 
Zitat:

Zitat von MrKnogge
..@Sharky:
Sieht interessant aus, und werd ich mir auf jedenfall mal ansehen. Hast du zufällig irgendwo den Befehlsatz von SQL-92 ?
....

Wenn du die Absolute Database installiert hast findest Du in dem Verzechniss die Datei AbsDbGuide.hlp. Dort sind alle unterstützten SQL-Befehle aufgeführt.

Snoop007 13. Jun 2004 08:27

Re: Wie speichert man am besten ein Wörterbuch
 
ich welcher *.pas Datei befindet sich eigendliche die THashedStringList ?

MrKnogge 13. Jun 2004 08:30

Re: Wie speichert man am besten ein Wörterbuch
 
Zitat:

Zitat von Snoop007
ich welcher *.pas Datei befindet sich eigendliche die THashedStringList ?

THashedStringList schreiben, F1 drücken und sich freuen das die OH "IniFiles" ausspuckz.

hm, sollten weitere Fragen zur THashedStringList auftreten, macht doch bitte n extra Thread dafür auf.

Snoop007 14. Jun 2004 10:52

Re: Wie speichert man am besten ein Wörterbuch
 
:wall: narf logo :stupid: *g


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:12 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