Typ rekordowy i plik typowany

Typ rekordowy i plik typowany
BU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 297
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???

Deti
  • Rejestracja: dni
  • Ostatnio: dni
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

BU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 297
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.

Deti
  • Rejestracja: dni
  • Ostatnio: dni
0

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

Wolverine
  • Rejestracja: dni
  • Ostatnio: dni
0

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

brick0
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

TZapis = record
Edit : String;
end;

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

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

darktemplar
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 34
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.

JA
  • Rejestracja: dni
  • Ostatnio: dni
0

Uzyj TStringStream

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.