ďťż

Ładny brzuch

Jak zapisac wartoś edit do pliku ???
edit1.text.SaveToFile(' data.txt');
to nei zapisuje



Tajemniczy przycisk szukaj sie klania. A jak sie bardzo nie chce :mad: to popatrz w helpie na temat: reset, rewrite, file, blockread, blockwrite, readln, writeln, fileclose.

var
S:TStringList;
begin
S:=TStringList.Create;
S.Text:=Edit1.Text;
S.SaveToFile(...);
S.Free

Nie jestem w domu i nie mogę tego sprawdzić, ale powinno działać.

procedure TForm1.Button1Click(Sender: TObject); var f, r:cardinal; b:pchar; begin f:=CreateFile('c:\plik.txt',GENERIC_WRITE,0,nil,CREATE_ALWAYS,0,0); b:=ptr(LocalAlloc(0,256)); b:=lstrcpy(b,pchar(Edit1.Text+#13#10)); WriteFile(f,b^,length(Edit1.Text)+2,r,nil); CloseHandle(f); end;
Użytkownik Cyrkiel edytował ten post 05 lipiec 2005, 11:09


I to jest przykład ja bardzo wam sienie chce myslec
Troche chęci i wiedzy ... liczycie ze wszytko bedzie gotowe
Edit1.SaveToFile :P Moze jeszcze szukacie komponetów albo zdarzenia typu

NowyOs.Enabled:=true ; {To robi nowego OS'a}

SuperGraFPP3d.Execute musi przyjać wartosc true

Wstyd ojjj wstyd

a ja zamiast zaawansowanego rozwiązania tego problemu bym zrobił po swojemu:

listbox1.Items.Text:=edit1.Text; listbox1.Items.SaveToFile('plik.txt');

listbox na visible:=false a jeśli nie chcesz by ci ten listbox zajmował pamięć to go programowo tworzysz a potem usuwasz (free)

// ja wiem programisto że tak jak zrobił lukexpert jest najlepszym rozwiązaniem lecz jak ktoś dotąd nie wiedział jak zapisać edit, a program nie był taki Ekspertowy to można i tak zrobić - lecz rozwiązanie lukexpert jest najpoprawniejsze i zgadzam się z tym ;)
Użytkownik tulio edytował ten post 05 lipiec 2005, 09:46

(...)

A najlepiej to wogle nie tworzyuc nowego obiektu!
var  f: textfile; begin assignfile(f, 'c:\plik.txt'); rewrite(f); write(f, edit1.text); closefile(f); end;


Ale moje rozwiązanie i tak będzie szybsze :P

cyrkiel: wiem, ale jak widze to pytanie, to (bez urazy turboasm) watpie ze gosciu zrozumie choc 50% z tego co napisales...

cyrkiel twoje rozwiązanie działa , teraz powiedz jak odczytać to co sie zapisało i żeby to było spowrotem w edit1

Znalazłem coś takiego
Var Plik:TextFile; S:String; Begin AssignFile(Plik,’C:plik.txt’); Reset(Plik); // otwieramy plik do odczytu While not eof(plik) do Begin Readln(Plik, S); // oczytanie linijki i przejście do następnej Memo1.Lines.Add(S); // do komponentu Memo1 [wrzuć go na formę] dodajemy linię, w której wypisana będzie zawartość zmiennej S End; CloseFile(Plik); End;

tylko ja chce to wpisać do edit1 nie do memo
Użytkownik rafaelle edytował ten post 25 marzec 2007, 09:41
Człowieku! Dostałeś już gotowe rozwiązanie!
Ale leń... wstyd!

//ah.. nie doczytałem do końca...
Zamień sobie Memo1.Lines.Add(S) na Edit1.Text := Edit1.Text + S;
Użytkownik JaCkObS edytował ten post 25 marzec 2007, 10:29

Człowieku! Dostałeś już gotowe rozwiązanie!
Ale leń... wstyd!

jakie rozwiązanie ? nadal nie wiem jak wpisać to w edit , nie do memo , kombinuje i nic :(


//ah.. nie doczytałem do końca...
Zamień sobie Memo1.Lines.Add(S) na Edit1.Text := Edit1.Text + S;

Dz wielkie , działa ,
Teraz kolejny problem , mam kilka editów i trzeba je zapisać w 1 pliku , potem odczytać i po kolei wpisywać do editów
zapisuje dobrze
procedure TForm1.Button1Click(Sender: TObject); var f, r:cardinal; b:pchar; begin f:=CreateFile('c:\Plik.txt',GENERIC_WRITE,0,nil,CREATE_ALWAYS,0,0); b:=ptr(LocalAlloc(0,256)); b:=lstrcpy(b,pchar(Edit1.Text+#13#10)); WriteFile(f,b^,length(Edit1.Text)+2,r,nil); b:=lstrcpy(b,pchar(Edit2.Text+#13#10)); WriteFile(f,b^,length(Edit2.Text)+2,r,nil); CloseHandle(f); end;
przykład do zapisania 2 editów
natomiast problem zaczyna sie przy próbie odczytu , obie linie wpisuje mi do edit1 , i edit2

procedure TForm1.Button2Click(Sender: TObject); Var Plik:TextFile; S:String; Begin edit1.Text:=''; edit2.Text:=''; AssignFile(Plik,'c:Plik.txt'); Reset(Plik); While not eof(plik) do Begin Readln(Plik, S); Edit1.Text := Edit1.Text + S; Edit2.Text := Edit2.Text + S; End; CloseFile(Plik); End;

jak zrobić żeby oddzielał linie od siebie i wpisywał je do osobnych editów ?

Już sobie poradziłem , zkopiowałem readln
Readln(Plik, S); Edit1.Text := Edit1.Text + S; Readln(Plik, S); Edit2.Text := Edit2.Text + S;

Dz za pomoc :)
Użytkownik rafaelle edytował ten post 25 marzec 2007, 11:18
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •