www.mikrocontroller.net

Forum: Compiler & IDEs Datei lesen und den Inhalt dann löschen, aber wie ?


Autor: macke_a (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo !
Ich möchte gerne die Datei mittels

datei = fopen ("test.txt","rb");

lesen und anschließend den Inhalt der test.txt Datei löschen.

Aber wie bekomme ich den Inhalt der Datei gelöscht ??

Mfg macke_a

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
datei = fopen("test.txt", "w");

und dann mit write() was anderes 'reinschreiben.

Oder was stellst Du Dir unter "inhalt löschen" vor?

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Aber wie bekomme ich den Inhalt der Datei gelöscht?

Der C-Standard hat dafür die Funktion remove() genormt.

Die APIs der einzelnen Betriebssyteme kennen u. U. dafür noch
low-level-Primitiven, bei Posix (Unix-API) z. B. unlink().

Autor: macke_a (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also Danke für Eure Beiträge erst mal!

@Rufus t. Firefly
Der Inhalt der Text Datei soll leer sein, dass meine ich mit "Inhalt" 
löschen. Vielleicht besteht die Möglichkeit mit einem anderen 
Öffnungsmodus, wie r,w,a,r+,b etc. den Inhalt der Text Datei zu löschen.
Natürlich kann ich auch die Datei auch neu beschreiben, aber das will 
ich halt nicht.

Andersrum geht natürlich auch, dass ich die Datei komplett entferne!

remove("test.txt")


Wäre dies richtig ?

Autor: Μαtthias W. (matthias) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

versuch mal genau 0 Byte mit fwrite/fprintf/fputs in die mit "wb" 
geöffnete Datei zu schreiben. Das sollte eigentlich funktionieren.

Matthias

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zum "Datei ab byte x abschneiden" (auch für x==0) gibts die fkt. 
truncate und ftruncate (unistd.h)

/Ernst

Autor: macke_a (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo !
Ich lösche die Datei jetzt mit
unlink(test.txt);

Freundliche Grüsse
macke_a

Danke für Eure Beiträge!!

Autor: macke_a (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, so ist es richtig!

unlink("test.txt");

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.