Typ rekordowy i plik typowany

0

Witam.
Może problem jest prosty do rozwiązania, ale szukając na forum nie znalazłem odpowiedzi. Otóż. Mam zdefiniowany typ rekordowy:

TZapis = record
Edit : String;
end;

następnie definuję typ pliku:

TPlik = file of TZapis;

I wszystko byłoby cacy gdyby nie wywalił błędu, gdyż nie zadeklarowałem długości stringa. Ale moge zadeklarować maksymalnie 255 znaków. Ale niestety ta dlugość jest dla moich potrzeb niewystarczająca. W jaki sposób mogę zadeklarować dłuższy string, np 700 znaków???

0

Było wiele razy mówione, komentowane, odsyłane do FAQ..

Arr: array of Char[1..2344];

// ajjj

Arr: array[1..2344] of Char;

Tak to jest po 30 godzinach braku snu

0

Oki, tylko że niestety nie działa. Zgłasza błędy, że spodziewał się ; (średnika), a nie [. jak wpisałem w typie, że jest Array of Char[1..700];
W tym typie jest nieco więcej pól, niż to jedno Edit. Ja tylko zasygnalizowałem że mam takie pola.

0

Nic z tego co napisałeś nie rozumiem - możesz to rozjaśnić?

0

Arr: array[1..2344] of Char;

0

TZapis = record
Edit : String;
end;

Tam, gdzie masz EDIT musisz dopisać:
Edit : String[255], czyli:

TZapis = record
Edit : String[255];
end;

0

Możesz też zadeklarować {$H-}.

Sęk w tym że bez tego widzi String jako AnsiString, a to nie jest zapisywalne bo jest tylko ptrem na tekst. string[255] to też rozwiązanie, ale trochę roboty jest.

0

Uzyj TStringStream

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