ďťż

Ładny brzuch

Cześć
Mam kod:

procedure TForm2.Button1Click(Sender: TObject);
var Plik : TIniFile;
begin
Plik:=TIniFile.Create (Edit2.Text + '.ini');
Plik.WriteString ('socket', 'serwer', Edit1.Text);
Plik.WriteString ('ftp', 'host', Edit3.Text);
Plik.WriteString ('ftp', 'login', Edit4.Text);
Plik.WriteString ('ftp', 'hasło', Edit5.Text);
Plik.Free;
Form2.Close;
end;

i czemu on nie tworzy automatycznie pliku ini o nazwie Edit2.Text + .ini ?? CO zrobić, żeby go utworzył??



Moim zdaniem kod jest poprawny. Czy w tym edicie1 jest dobra sciezka podana? Wiesz chyba, ze jesli zabraknie ':', albo jednego z '\' to nie utworzy pliku, albo utworzy w zlym miejscu.

Note: Usually INI files are stored in the \WINDOWS directory. To work with an INI file in another location, specify the full path name of the file in FileName. :P
RTFM

OK, muszę podać pełną ścieżkę i działa. A jak zrobić, aby plik bez podanej ścieżki zapisany był w folderze programu



Przecież napisane jest jak byk w pomocy, że musisz podać pełną ścieżkę do pliku, żeby był on w innym katalogu (nie w WINDOWS\)

W Twoim poprzednim temacie podałem Ci rozwiązanie:/.

Plik:=TIniFile.Create(ExtractFilePath(Application.ExeName) + Edit2.Text + '.ini');

I wyrób sobie nawyk wstawiania instrukcji na dowolnych plikach lub rejestrze w blok try..finally !

Co do zapisywania danych do pliku, nie będę tworzył nowego tematu.
Więc, jak można zapisaywać do pliku rózne wartości (liczby czy tekst)
ale żeby po otwarciu plików były w nim "krzaczki" :) ale przy odczytywaniu program czyta to już normalnie
?
Wszystko po to aby w prosty sposób nie było można modyfikować wybranych wartości.


Co do zapisywania danych do pliku, nie będę tworzył nowego tematu.
Więc, jak można zapisaywać do pliku rózne wartości (liczby czy tekst)
ale żeby po otwarciu plików były w nim "krzaczki" :)  ale przy odczytywaniu program czyta to już normalnie
?
Wszystko po to aby w prosty sposób  nie było można modyfikować wybranych wartości.

Możesz też zastosować klasę TFileStream:
var g:integer; f:tfilestream; begin g:=15; f:=TFileStream.Create('plik.txt',fmCreate or fmOpenWrite); f.write(g,sizeof(g)); f.Free; end;
^^ zapis

var g:integer; f:tfilestream; begin f:=TFileStream.Create('plik.txt',fmOpenRead); f.read(g,sizeof(g)); f.Free; end;
^^ odczyt

@DOWN: ale o tym nie wspomiałeś :P
Użytkownik krajew4 edytował ten post 04 lipiec 2006, 12:53

Możesz też zastosować klasę TFileStream:
var g:integer; f:tfilestream; begin g:=15; f:=TFileStream.Create('plik.txt',fmCreate or fmOpenWrite); f.write(g,sizeof(g)); f.Free; end;
^^ zapis

var g:integer; f:tfilestream; begin f:=TFileStream.Create('plik.txt',fmOpenRead); f.read(g,sizeof(g)); f.Free; end;
^^ odczyt

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •