001
09.08.2005, 10:42 Uhr
Th
|
Am einfachsten ist es, du erstellst eine Textdatei und parst sie dann am Anfang des Programms ein. Ich nehme an, du programmierst in C++. Dann erstellst du eine Struktur, z.B.
C++: |
struct SEntry { int ID; string sName1; int Typ; string sName2; };
|
Dann liest du Zeile für Zeile die Textdaten ein und setzt sie in die Struktur. Anschließend füllst du eine Map mit den Daten:
C++: |
map<int, SEntry> Tabelle;
SEntry entry; entry.ID = ...; entry.sName1 = ...; ... Tabelle[entry.ID] = entry; // füllend er Tabelle (sortiert nach ID)
|
Um an die Einträge wieder zu kommen, einfach den Index der Tabelle ansprechen:
C++: |
int index = 111; // z.B. const SEntry &entry = Tabelle[index]; cout << entry.Id << entry.sName1 << entry.Typ << entry.sName2; // Ausgabe ohne Leerzeichen
|
Hard kodieren würde ich solche Tabellen nicht, außer sie ändern sich niemals. Dann kannst du auch einfach ein Array nehmen, z.B
C++: |
static SEntry st_Tabelle[] = { { 111, "Name1", 42, "Name2" }, // pro Zeile ein Eintrag ... };
|
Dann brauchst du dieses Array einfach in einer Schleife durchlaufen und die Einträge dann in die Map schreiben (wegen schnellem Finden der Einträge anhand der ID).
Ich hoffe, ich habe dein Problem richtig erkannt und es hilft dir weiter... |