Forum MOJA PASJA - PROGRAMOWANIE Strona Główna
http://www.programuj.com
  WikiWiki  FAQFAQ    SzukajSzukaj    UżytkownicyUżytkownicy    GrupyGrupy   RejestracjaRejestracja 
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 




zapis do pliku tekstowego - problem z dopisywaniem danych


 
Napisz nowy temat   Odpowiedz do tematu    Forum MOJA PASJA - PROGRAMOWANIE Strona Główna -> Borland C++ Builder
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
jabu74 - ekspert
10100111001


Dołączył: 05 Sie 2008
Posty: 139
Skąd: Kozia Wólka

Post Zacytuj zaznaczone Odpowiedz z cytatem OCEŃ POST
witam !

nie wiem jak napisac kod, ktory dopisywalby kolejne dane do istniejacego juz pliku tekstowego z danymi, a jego stara zawartosc nie byla niszczona. jezeli plik nie istnieje to zeby go program sam wczesniej utworzyl.

napisalem cos takiego wykorzystujace WinAPI ale program nie dopisuje danych.

w Edit2 sciezka i nazwa pliku, w Str3 biezacy tekst do zapisania
c++:
HANDLE aFile;
DWORD bytes_written;

aFile = CreateFile(Edit2->Text.c_str(), GENERIC_WRITE, 0, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);

if (aFile != INVALID_HANDLE_VALUE) {

        WriteFile(aFile, Str3.c_str(), Str3.Length(), &bytes_written, NULL);

        CloseHandle(aFile);
}


zaraz mnie cos trafi ale nie powiem co Mad
Powrót do góry
Ogląda profil użytkownika Wyślij prywatną wiadomość Wyślij email
banita22
programista


Dołączył: 28 Lis 2007
Posty: 634

Post Zacytuj zaznaczone Odpowiedz z cytatem OCEŃ POST
wykorzystaj strumienie z c++ w koncu patrzac na dzial w ktorym umiescieles temat to wlasnie piszesz w c++.
kozysta sie z nich tak samo jak ze standardowych strumieni wejscia/wyjscia
http://www.cplusplus.com/reference/iostream/ofstream/
zwroc uwage na znaczniki przekazywane do konstruktora(wzglednie funkcji open) tak aby przy otwarciu pliku nie kasowac jego zawartosci a jedynie ustawic pozycje do pisania na koncu pliku.
Powrót do góry
Ogląda profil użytkownika Wyślij prywatną wiadomość
nebus
programista


Dołączył: 23 Lis 2006
Posty: 364
Skąd: Więcbork

Post Zacytuj zaznaczone Odpowiedz z cytatem OCEŃ POST
jesli to ma byc czesto uzywane np do logow lub zapisu keylogera to polecam rozwiazanie


c++:
#include <stdio.h>
//....
void __fastcall TForm1::Button1Click(TObject *Sender)
{
FILE *fileopen;
fileopen=fopen("log.txt","a+")//"a+" tworzy nowy plik lub dopisuje do istniejacego
//log.txt to sciezka do pliku
fputs(Memo1->Text.c_str(),fileopen); //Memo1->Text.c_str(), to informacje zapisywane do pliku
fclose(fileopen);
}

_________________
"Usuń ze swojego słownika słowo problem i zastąp słowem wyzwanie. Życie stanie się nagle bardziej podniecające i interesujące"

zobacz tu, warto ! http://programowanie.cal.pl/cyfbar/
Powrót do góry
Ogląda profil użytkownika Wyślij prywatną wiadomość Wyślij email
Wyświetl posty z ostatnich:   
Napisz nowy temat   Odpowiedz do tematu    Forum MOJA PASJA - PROGRAMOWANIE Strona Główna -> Borland C++ Builder Wszystkie czasy w strefie CET (Europa)
Strona 1 z 1

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach


hosting sponsorowany przez hosted.pl
Powered by phpBB © 2001, 2002 phpBB Group