Tekst z pliku do zmiennej.

0

Witam.

Mam duży problem przez duże "D" .

Mianowicie....

Mam jakiś tekst w pliku np. dane.txt, a plik wygląda następująco:

[code]
Ivan waleczny

Życie : dużo Pancerz : średni
piniądze : mało Obrona : wysoka
Atak: przeciętny

Czarodziejski Aniołek

Życie : mało Pancerz : mało
piniądze : wysoka Obrona : mało
Atak: wysoki
[/code]

I teraz musze jakoś pod zmienną zycie, kondycja, imię, atak itp. wstawić daną wartość np. dużo=5, wysoka=6 itd.

Jak zrobić by odczytać wszystkie wartości i wstawił pod zmienne?
Próbowałem coś zrobić ale to jest troche ponad moje siły!

Pozdrawiam.

0

A StringReplace próbowałeś? A rozdzielanie stringa było wałkowane ze 100 razy, poszukaj.

0

Czy tak nie będzie za trudno? w jedną linie weź np.

[code]Ivan waleczny|duzo|sredni|malo|wysoka|przecietny[/code]

(tak samo dla aniołka :-P )

odczytujesz dane o ivanie z pliku do stringu S i tworzysz zmienną tstringlist...
lista:=tstringlist.create;
lista.text:=stringreplace(S,'|',#13#10,[rfreplaceall]);
... tu operacje na lista np. lista.strings[0] to Ivan waleczny lista.strings[1] to duzo itp ...
lista.free;

0

No, jesli mozesz zmienic format tego pliku to mozesz tez zrobic to przez INI, XML albo http://4programmers.net/view_file.php?id=1506

0

A niełatwiej by to było zapisywać w rekordach?

0

A niełatwiej by to było zapisywać w rekordach?

Tu właśnie chodzi o to że plik jest z zewnątrz!
Taka pomoc do gry :)

To może w ten sposób:

Mam tylko jedną postać. Szuka pewnego wyrazu np. [code]życie: [/code] i następny wyaraz po nim ładuje do zmiennej?

Próbowałem na podstawie jakiś kodów z innych postów, ale nic mi nie wychodzi.

Pomocy

0

Odetnij pierwsza linijke (imie), potem podziel wszystko wzgledem ' ' (dwie spacje), petla, wyszukujesz pozycje i masz stringa w postaci cos : cos, dzielisz wzgledem : i masz.

1 użytkowników online, w tym zalogowanych: 0, gości: 1