Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » teile einer Datei ersetzen ?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
01.03.2003, 14:57 Uhr
tolleiv



Hallo,

ich hab gerade ne Denkblockade also brauch ich Hilfe von euch.

Ich hab na Datei die in etwa so aufgebaut ist :

< Integer > < Struct > < Struct >....

der Integer wir zur Kontrolle immer mit angelegt allerdings fällt mir gerade nicht ein wie ich in einer bestehenden Datei den Integerwert verändere.
Ich will also einfach überschreiben aber mit fwrite füge ich ja nur etwas ein und das hilft mir nicht weiter.

So wer jetzt ne Antwort weiss immer her damit.
Ach ja ich verwende den guten alten GCC

Danke
mfG tolleiv

Dieser Post wurde am 01.03.2003 um 15:11 Uhr von tolleiv editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
02.03.2003, 18:39 Uhr
Christian
C/C++ Master
(Operator)


Hi!

Was du auf alle Fälle machen könntest wäre die Datei komplett auslesen und dann überschreiben, oder eben mit 2 Dateien arbeiten und dann aus der einen Lesen und die Daten mittels Änderungen dann in der neuen abspeichern.

Grüße
--
Grüße, Christian
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
02.03.2003, 18:53 Uhr
tolleiv



Hallo,
genau so mache ich es zZt. aber es muss doch auch gehen einfach in einer Datei an der Stelle X einfach einen bestehenden Wert zu überschreiben ohne gleich die ganzen anderen Daten mit "berühren" zu müssen.

Danke für die Antwort.

Mfg tolleiv
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
02.03.2003, 20:16 Uhr
Christian
C/C++ Master
(Operator)


Hi!

Naja, nachdem ja die File Funktionen einen Stream bearbeiten, und Streams normalerweise nur schreibend oder lesend verwendet werden, habe ich mir darüber noch wenige Gedanken gemacht. Würde mich auch interessieren: Kann man im Stream einige BYTEs löschen? (einfügen funktioniert ja)
--
Grüße, Christian
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
02.03.2003, 21:03 Uhr
virtual
Sexiest Bit alive
(Operator)


Man kann bei fopen auch eine Datei zum Lesen und schreiben öffnen. Es gibt keine vorgefertigte Funktionen zum Löschen oder Einfügen mitten in der Datei, sondern lediglich an deren Ende.
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
02.03.2003, 21:27 Uhr
tolleiv



Aha schade das erklärt wieso man auch im restlichem Internet nix dazu findet.
Weia da muss ich vielleicht noch meine Assemblerkenntnisse reaktivieren ?
Och neeeeee.


Mfg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
02.03.2003, 21:59 Uhr
virtual
Sexiest Bit alive
(Operator)


Wieso Assembler???? - C(++) reicht da völlig. Möglicherweise ist es auch keine so gute strategie, mitten in der Datei etwas wirklich löschen zu wollen. Ich würde nix physikalisch löschen, sonderen nur logisch: da gibt man den jedem struct eintrag ein Flag mit, ob es gültig ist, oder als gelöscht zu gelten hat. Das sollte einige überflüssige Lese/Schreib aktionen vermeiden. Wenn die Structs auch noch alle die gleiche größe haben, kjann man jederzeit einen logisch gelöschten eintrag durch einen neuen ersetzen, so daß die Datei auch nicht allzu lange wird...
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
02.03.2003, 22:18 Uhr
tolleiv



Ja Nee stimmt. Ich sag ja Denkblockade.

Aber dadurch kanns doch passieren das ich Tonnenweise tote Stucts mit rumschleppe solange bis ich denn alles gültige in einen neuen Stream reinpacke. Da wäre es wie ich finde trozdem besser zu löschen wenn ich weiss was ich lösche is das ja nich so das prob.

Mfg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: