CBuilder 6 / Text in eine erstellte Datei speichern!

#1
Hallo, Ich suche seit Tagen im Internet nach einer Lösung meines Problems, aber habe keine Lösung gefunden.
Hier mein Problem:
Ich erstelle eine .txt datei in Cbuilder 6 und möchte etwas hineinschreiben.


void __fastcall TForm1::Button1Click(TObject *Sender)
{
FileCreate(Edit1->Text+"MeinText.txt");

}
Kann jemand mir sagen wie das geht ich bin ein neueinsteiger und mit den befehlen im aus anderen quellen kann ich es nicht machen.
Danke im vorraus.:)
 
Zuletzt bearbeitet:
#5
Hier ist der Versuch :

Code:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    FileCreate(Edit1->Text+"MeinText.txt");
    fopen ("c:\Users\Public\Desktop\MeinText.txt","w+");
    fprintf("MeinText.txt", "Hallo");
    fclose("MeinText.txt");





}
 

saftmeister

Nutze den Saft!
Premium-User
#6
Hmm, mal Dokumentation lesen wäre ratsam. Versuch es mal so:

C++:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    FileCreate(Edit1->Text+"MeinText.txt");
    FILE *fp = fopen ("c:\Users\Public\Desktop\MeinText.txt","w+");
    if(fp) {
      fprintf(fp, "Hallo");
      fclose(fp);
    }
}
Ein FILE* ist ein Pointer auf ein File-Handle. Sämtliche stdio-Funktionen verwenden File-Pointer. Du solltest dich damit vertraut machen. Das hat noch nicht mal speziell was mit CBuilder zu tun, sondern ist ANSI. Hier ein tolles Buch zum lesen: http://openbook.galileocomputing.de/c_von_a_bis_z/
 
#7
Danke es funktionert das es "hallo" in die textdatei schreibt aber
1.es erstellet eine neue text datei
2.es speichert den text nicht in die erstellete Text datei
3.wenn ich den pfad eingbe wird der name der ertellten text datei der pfad?
Code:
("c:\Users\Public\Desktop\MeinText.txt","w+");
 

saftmeister

Nutze den Saft!
Premium-User
#8
1. Dann willst du evtl. mal als Modus für das Öffnen der Datei "a" wie append (anhängen) statt "w" wie "write", was die Datei quasi leert.

2. In welche erstelle Datei? Die von "FileCreate(Edit1->Text+"MeinText.txt");"? Dann musst du halt den Pfad von fopen() entsprechend anpassen.

3. ?
 
#10
Zuerzeit habe ich das
Code:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    FileCreate(Edit1->Text+"MeinText.txt");
    FILE *fp = fopen ("C:\\Users\\Public\\Desktop\\MeinText.txt","a");
    if(fp) {
      fprintf(fp, "Hallo");
      fclose(fp);
    }



}
Es gibt immer nur eine leere datei
 
#11
a)
Lösch die leere Datei, nimm folgende Zeile aus dem Code
C++:
FileCreate(Edit1->Text+"MeinText.txt");
und führ in wieder aus.
Ist wieder eine leere Datei da? Nein?
Dann hast du einfach die falsche Datei angeschaut.
Dieses FileCreate, wo immer es auch her kommt, hat mit dem Rest nichts zu tun.

b)
Mach nach dem if(...){...} noch ein else, in dem du irgendeine Fehlermeldung ausgibst.
Wird die beim Ausführen angezeigt?
 
#12
Danke es ist gegangen hier der Code:
Code:
void __fastcall TForm1::Button1Click(TObject *Sender)
{


    FILE *fp = fopen ("C:\\Users\\Public\\Desktop\\MeinText.txt","w+");
    if(fp) {
      fprintf(fp, "Hallo");
      fclose(fp);
    }



}
Danke vielmals :)