Random Access File med en strängstruktur

Permalänk
Medlem

Random Access File med en strängstruktur

Finns det något sätt att skriva in följande i en random access file, samt läsa in data till den från en random access file?

struct data { string titel; string nummer; string film; };

Det jag trodde skulle funka var:

void skriv_data(vector< data > info) { ofstream file( "film.dat", ios::trunc); for (int i=1; i<info.size(); i++) { file.write(reinterpret_cast<const char *>( &info[i] ), sizeof(data) ); } } void las_data(vector< data >& info) { data temp; ifstream file("film.dat", ios::in); file.clear(); while ( file && !file.eof() ) { file.read(reinterpret_cast< char *>( &temp ), sizeof(data) ); info.push_back(temp); } }

Anledningen till att jag använder struct och inte en class är för att jag påbörjade detta långt innan jag tittade på OOP, och jag vill bara fixa läsningen till/från fil. Sekventiell läsning ger en massa problem med tomma vektorer och radbrytningar här och där.

Visa signatur

Light travels faster than sound. Is that why some people appear to be smart before they speak?
It's a big rock. I can't wait to tell my friends. They don't have a rock this big.