🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #551

Re: struct in Datei aus Datei

#551
From: Bernd Eggink
Date: Wed, 11 Oct 1995 21:09
44 lines
2093 bytes
Harald Fuchs (hf@colibri.de) wrote:
>  Markus Becker <becker@zess.uni-siegen.de> writes:

>  >> Ich schreibe gerade an eine Prog. und muss dazu Files auslesen und schreiben,
>  >> nun waehre es sehr hilfreich wenn ich direkt vom file in ein struct einlesen
>  >> koennte bzw. ein struct in eine Datei schreiben koennte, ich habe schon viel
>  >> ausprobiert aber es ging alles nicht.


>  > Probier's mal mit:
>  > ------------------

>  > FILE *fp;
>  > struct XYSTRUCT xy_s;

>  > fp = fopen("blah.dat","rb");
>  > fread(&xy_s,sizeof(XYSTRUCT),number_of_structs,fp);
>  > fclose(fp);

>  Das ist die C-Lösung.  In C++ würde man für sowas wohl eher
>  fstreams und istream::read / ostream::write verwenden.

>  Ganz davon abgesehen wäre es aus Portablilitätsgründen sowieso besser,
>  textuelle Darstellung oder zumindest eine plattformunabhängige
>  Kodierung wie XDR zu verwenden.

Von der Methode ist im allgemeinen ganz abzuraten. Abgesehen von den
Portabilitaetsprblemen funktioniert sie nur bei einfachen Groessen und
den allereinfachsten Datenstrukturen. Sind Zeiger oder Referenzen im 
Objekt enthalten, muss man sich etwas mehr einfallen lassen. Enthaelt 
die Klasse virtuelle Funktionen, gibt es mit groesster Wahrscheinlichkeit 
eine Katastrophe.

Zeichenweise Ein-/Ausgabe und Ueberladen von operator<<() bzw. operator>>()
ist i.a. die vernuenftigste Methode.

Gruss
	Bernd
--
+----------------------------------+
|          Bernd Eggink            |
|    Rechenzentrum Uni Hamburg     |
| admin@rzaix13.rrz.uni-hamburg.de |
+----------------------------------+
Technical Details
Message-ID: <45hbqb$g2i@rzsun02.rrz.uni-hamburg.de>
Path: arc1-ca.pugleaf.net!news.rrz.uni-hamburg.de!rzaix13!admin
References: <039_9510102206@gigabase.rhein-main.de> <puybus6jrx.fsf@themroc.colibri.de>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!news.rrz.uni-hamburg.de!rzaix13!admin
From: admin@rzaix13.uni-hamburg.de (Bernd Eggink)
Newsgroups: de.comp.lang.c++
Subject: Re: struct in Datei aus Datei
Date: 11 Oct 1995 21:09:31 GMT
Organization: University of Hamburg -- Germany
Message-ID: <45hbqb$g2i@rzsun02.rrz.uni-hamburg.de>
References: <039_9510102206@gigabase.rhein-main.de> <puybus6jrx.fsf@themroc.colibri.de>
NNTP-Posting-Host: rzaix13.rrz.uni-hamburg.de
X-Newsreader: TIN [version 1.2 PL2]