I znów Stringi:))))

0

Cze
DObra mam kodzik
TDataRec = packed record
Name : string[255];

chodzi o to aby zamiast 255 można było dać np.500;
Ale musi to być STRING!

0

popróbuj ansistring widestring i pchar ... to prawie to samo tyle ze wiecej miejsca

PS. ty stringersie :)

0

już próbowałem ale podczas odczytu wychodźą bzdury!!!:((

0

dlaczego masz 2 posty ?? tak samo zatytuowane, spodziewaj sie ze Lepsi programiści przestanąci odpowiadac patrz offtopic

0

popróbuj ansistring widestring

bez sensu, tak mu zapisze tylko wskazniki do lancuchow a nie zawartosc

już próbowałem ale podczas odczytu wychodźą bzdury

no wlasnie

uzyj array [1...500] of char

ponizszy przyklad przedstawia jak przenosic dane miedzy stringiem a array of char

procedure TForm1.Button1Click(Sender: TObject);
var
s, t: string;
a: array [1..500] of char;
begin
s:=Edit1.Text;
Move(s[1], a[1], Length(s)); {nie mozna zrobic rzutowania ze stringa do
tablicy charow, dlatego trzeba uzyc Move. s nie moze byc dluzszy niz 500}
t:=a; {ale w druga strone wolno rzutowac, wiec moze byc zwykle przypisanie}
SetLength(t,Length(s));{trzeba obciac przypadkowe znaki, ktore byly uprzednio
w tablicy. Mozesz tez "recznie" inicjalizowac tablice spacjami, ale wtedy t bedzie
zawsze dlugosci 500}
Label1.Caption:=t;
end;

0

Dzięki pq

0

A jeszcze jedno czy idzie przekonwersować Array na string???

0

to obetnie ci do 255 znakow np array 1..500 -_- chcesz skoro to patrz :

for i:=low(tablica) to high(tablica) do ss:=ss+tablica[i];

więcej mniej to wygląda tak=] ale przestrzegam ze ci obetnie...

0

to obetnie ci do 255 znakow

Nie obetnie jeżeli użyjesz AnsiString.

0

A jeszcze jedno czy idzie przekonwersować Array na string???

Owszem, jeśli masz na myśli array of char. Należało przeczytać mój kod. Czyni to linijka:

t:=a;

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