Zapis do pliku z programu

0

Witam , jestem początkującym w tych sprawach, chciał bym napisać program który już prawie skończyłem tylko mam pytanie jeżeli coś sie napisze w ,,edit (stdcrls) " i sie zapisze i wyłączy program , to mi zależy żeby to było to co tam było napisane , tak jak by baza danych. Jeżeli coś nie zrozumiale napisałem to prosze napisać to jeszcze spróbuje jaśniej to napisać .

Pozdrawiam i licze na pomoc

0
Heart_Breaker napisał(a)

jeżeli coś sie napisze w ,,edit (stdcrls) " i sie zapisze i wyłączy program , to mi zależy żeby to było to co tam było napisane , tak jak by baza danych

Nie rozumiem zbytnio z czym masz problem, z zapisem informacji do pliku i późniejszym ich wczytaniem, czy ze znalezieniem miejsca na taki kod;

Ogólnie rzecz biorąc musisz wiedzieć co chcesz w takim pliku zapisać, jaki to ma być typ pliku (tekstowy, typowany, amorficzny) i gdzie chcesz zamieścić procedury realizujące to zagadnienie;

Jeśli wybierzesz pliki tekstowe - polecam pliki INI - są proste w obsłudze, ale trzeba znać podstawy programowania obiektowego (OOP); Jeśli typowane - poczytaj trochę o nich; Nie będziesz musiał tworzyć obiektów, ale kilka innych ciekawych rzeczy się z nimi wiąże; Najtrudniejsza prawdopodobnie w Twoim przypadku będzie obsługa plików amorficznych (binarnych); O nich też trzeba troszkę poczytać zanim weźmiesz się do kodowania;

Jeśli chodzi o miejsce w kodzie, w którym będziesz chciał zapisywać dane do pliku to myślę, że jak chcesz podczas uruchomienia programu wczytać informacje z pliku, a przy wyjściu z programu zapisać je, to zrealizuj to odpowiednio w zdarzeniach OnCreate i OnDestroy głownego formularza aplikacji;

Wszystko zależy od projektu i tego gdzie sobie zażyczysz takich operacji;

0

Hym widze że ty mnie nie rozumisz i ja cb , teraz to bardziej wyjaśnie.

Program bedzie polegał np że wpisuje sie numery auta/naczepy i np stan przebiegu przy którym był wymieniany olej i jak to wpisze i wyłącze program to wszystko jest wyzerowane a mi zależy na tym aby było wpisane to co napisałem wcześniej.

0

Odpowiedź jest prosta:

Furious Programming napisał(a)

Ogólnie rzecz biorąc musisz wiedzieć co chcesz w takim pliku zapisać, jaki to ma być typ pliku (tekstowy, typowany, amorficzny) i gdzie chcesz zamieścić procedury realizujące to zagadnienie;

Jeśli chodzi o miejsce w kodzie, w którym będziesz chciał zapisywać dane do pliku to myślę, że jak chcesz podczas uruchomienia programu wczytać informacje z pliku, a przy wyjściu z programu zapisać je, to zrealizuj to odpowiednio w zdarzeniach OnCreate i OnDestroy głownego formularza aplikacji;

No to napisałem Ci - określ w którym momencie podczas pracy programu chcesz to wykonać i napisz w tym miejscu kod wykonujący zapis/odczyt informacji do/z pliku; Naucz się obsługi plików (najpierw określ w jakim pliku mają być przechowywane informacje); Bez tego nie napiszesz nic, będziesz tylko pytał i pytał o coś, co możesz się dowiedzieć z kursu zamieszczonego na tej stronie (dałem Ci linki do działu z plikami);

Jeśli tego nie rozumiesz to polecam najpierw nauczyć się podstaw programowania, a później dopiero zająć się pisaniem większych projektów;

0

Ahha dzięki.
A mam jeszcze takie pytanko jeżeli napisał bym ten program czy byś mi zrobił to co wyżej napisałeś bo jak dla mnie to jest troche jeszcze czarna magia oczywiście zapłace :)

0
Heart_Breaker napisał(a)

jeżeli napisał bym ten program czy byś mi zrobił to co wyżej napisałeś

A dlaczego ja mam kończyć Twój projekt?

Heart_Breaker napisał(a)

bo jak dla mnie to jest troche jeszcze czarna magia

Bo nie przeczytałeś artykułów o obsłudze plików, do których podałem Ci linki; Jeśli poczytasz i spróbujesz to na pewno dasz sobie radę; Kwestia tylko tego czy Ci się chce, czy lepiej zwalić to na innych i mieć problem z głowy;

Heart_Breaker napisał(a)

oczywiście zapłace

Dziękuję, ale na brak pieniążków nie narzekam; Wolałbym, żebyś program napisał sam, a jeśli czegoś nie uda Ci się zrobić to oczywiście - pomogę; No ale najpierw zrób coś sam, a jak Ci nie będzie działało tak, jak tego chcesz to podpowiem co w programie zmienić;

Jak na razie nie podałeś żadnego kodu, więc nic tu po mnie; Napisz coś sam, a nie czekaj na gotowe;

0

Zapis zawartości kontrolki Edit do pliku:

procedure TForm1.btnZapiszClick(Sender: TObject);
var
  TF : TextFile;
begin
  AssignFile(TF, 'plik.txt');
  Rewrite(TF);
  Writeln(TF, Edit1.Text);
  CloseFile(TF);
end;

Odczyt zawartości pliku do kontrolki Edit:

procedure TForm1.FormCreate(Sender: TObject);
var
  TF : TextFile;
  S: String;
begin
  AssignFile(TF, 'plik.txt');
  Reset(TF);
  Readln(TF, S);
  CloseFile(TF);
  Edit1.Text := S;
end;

Teraz pozostaje Ci tylko przerobić te moje przykłady do swoich potrzeb.

0
0DFh napisał(a):

Zapis zawartości kontrolki Edit do pliku:

procedure TForm1.btnZapiszClick(Sender: TObject);
var
  TF : TextFile;
begin
  AssignFile(TF, 'plik.txt');
  Rewrite(TF);
  Writeln(TF, Edit1.Text);
  CloseFile(TF);
end;

Odczyt zawartości pliku do kontrolki Edit:

procedure TForm1.FormCreate(Sender: TObject);
var
  TF : TextFile;
  S: String;
begin
  AssignFile(TF, 'plik.txt');
  Reset(TF);
  Readln(TF, S);
  CloseFile(TF);
  Edit1.Text := S;
end;

Teraz pozostaje Ci tylko przerobić te moje przykłady do swoich potrzeb.

Z tego co rozumiem całe te kody mam wkleić do odpowiednich ,,tabelek"

0

tebelek? A co to tabelki? Widzę, że naprawdę brak ci sporo wiedzy skoro nie wiesz co to za procedury są. Kompendium Zalecam to przeczytać. Ja dzięki temu poznałem 70% mojej wiedzy o Delphi. oraz pomogło mi to wejść głębiej w programowanie niż tylko na zajęciach w szkole. btw pierwsza procedura która tam masz jest to procedura wywoływana po kliknięciu w przycisk druga przy otwieraniu okna nr 1. Ale ty możesz ten kod użyć gdzie tylko chcesz tylko nie kopiuj tak jak tu masz bo to tylko przykład. Aż ciężko mi to wyjaśnić tobie... hmm skopiuj zmienne oraz treść procedury (pomiędzy begin a end) i wklej tam gdzie chcesz aby w TWOIM PROGRAMIE się to wykonało.

0

Witam , czytałem ten poradnik to nawet już troche sie dowiedziałem ale dalej nie wiem jak to zrobić

Napisałem tą ,,badziewną jak dla was , ale dla mnie to fajne" aplikacje , podam link do .dpr i jak by ktoś miał czas i by miał chęci to może by mi wytłumaczył co gdzie mam napisać.
Mogę zapłacić za pomoc sms-em

http://www.sendspace.pl/file/878093a98d45e3857bd54de/project1

Pozdrawiam

0

A co nam z samego pliku projektu, który nie zawiera żadnego sensownego kodu. Jeżeli nie piszesz w czystym WinAPI ani aplikacji konsolowej, bez dodatkowych modułów to sam plik projektu *.dpr nam nic nie da. Poza tym jak chcesz komuś zlecić napisanie programu, to pisz w dziale Praca i raczej radzę zapronować sensowne wynagrodzenie, a nie "za smsa", bo nie wiem co przez to rozumiesz, ale za parę złotych - to napisze Ci chyba taki program tylko jakiś zdesperowany student albo gimnazjalista, o ile zrobi to sensownie i takiego w ogóle znajdziesz.

0

Z samego pliku projektu można jedynie wywnioskować to, że jeszcze tak naprawdę nic nie wiesz o programowaniu i środowisku, w którym pracujesz; Bo co można się dowiedzieć z tego pliku? Tyle:

program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.

Myślisz, że taka wiedza w zupełności wystarczy? Trochę się pomyliłeś; Tak więc zabieraj się do nauki i nie marnuj swojego i naszego czasu, bo od czasu, kiedy napisałeś ten wątek nauczyłbyś się podstaw obsługi plików i już dawno napisałbyś to sam;

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