czytanie z pliku zmiennej real

0

Witam

Mam problem z odczytaniem z pliku (a później z zapisaniem) zmiennej rzeczywistej.
Plik danych, z którego chcę odczytać dane jest używany przez program DOSowy (TP?).
Ustaliłem już, że plik składa się z rekodów o strukturze :

string[8]
string[8]
char
real? (6 bajtów)
real? (6 bajtów)
real? (6 bajtów)

Pierwsze trzy elementy udaje mi się odczytać, natomiast nie mam koncepcji na odczytanie trzech liczb zmiennoprzecinkowych. Używam Delphi5. Próbowałem już zmieniać 8 bajtowy Real na 6 bajtowy Real48, ale nic z tego nie wychodzi (Delphi czyta większe kawałki niż 6 bajtów i potem rozjeżcza się następny rekord).
Myślałem też już o odczytaniu tych sześciu bajtów i zamianie ich "ręcznie" na liczbę rzeczywistą. Może ktoś ma namiary na komponenty do bawienia się w takie zamiany, albo inną koncepcją rozwiązania problemu?

pozdrowionka
pepe

0

Jezeli sam najpierw zapisujesz ten plik a pozniej go odczytujesz to moglbys zmienic strukture rekordu ktory zapisujesz np:

string[8]
string[8]
char
string[20]
string[20]
string[20]

i przed zapisem konwertowac zmienna rzeczywista na lancuch znakow. A przy odczycie zrobic to tylko ze w odwrotna strone:)

Pozdrawiam,

Wodzu

0

<quote>Jezeli sam najpierw zapisujesz ten plik a pozniej go odczytujesz to moglbys zmienic strukture rekordu ktory zapisujesz np:

Niestety struktura pliku musi pozostać taka jak jest (musi mieć możliwośc korzystania również wspomniany program DOSowy - którego nie ma szansy zmienić)

pepe

0

Jezeli sam najpierw zapisujesz ten plik a pozniej go odczytujesz to moglbys zmienic strukture rekordu ktory zapisujesz np:
Niestety struktura pliku musi pozostać taka jak jest (musi mieć możliwośc korzystania również wspomniany program DOSowy - którego nie ma szansy zmienić)
pepe

Do autora powyzszego postu! Prosze nie używać na forum 4programmers.net nicku "Pepe", jako że jest to mój nick, oficjalnie zarejestrowany...
Do moderatorów.
Czy da się blokować taki wpis nicka osoby niezarejestrowanej, jeżeli wiadomo że takowy jest juz zajęty?
Nie chciałbym być kojarzony z cudzymi wypowiedziami.
Pozdr.
Pepe

0

OK, sorki, nie wiedziałem

pepe2

0

Problem już rozwiązany (na innym forum)
Wystarczyło użyć rekordu spakowanego zmiast normalnego (packed record)

dzięki wszystkim
pepe2

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.