Pereiti prie turinio

C++ failo perrasymas


Rekomenduojami pranešimai

Taigi yra toks algoritmas 1) is failo BOOK.DAT paimam duomenis, paredaguojame ir idedame i temp.dat 2) is emp.dat perkeliame i BOOK.DAT vat cia ir iskila problema, kad tiek duomenis nenori persikelt, paziurekit gal rasit problema :)

 

#include <iostream>
#include <fstream>
using namespace std;


class knygos 
{

private:
        int nr;
        char pavadinimas[30];
        char autorius[30];
        int egz_sk;
	 int laisvu_egz;
        int  nario_kodas; 
	 int y,m,d; 

public: void update_knyga(char tpacadinimas[30]);


};

void knygos::update_knyga(char tpavadinimas[30]){

fstream file ;
file.open("BOOK.DAT", ios::in) ;
fstream temp ;
temp.open("temp.dat", ios::out) ;
file.seekg(0,ios::beg) ;
while ( !file.eof() )
{
	file.read((char *) this, sizeof(knygos)) ;
	if ( file.eof() )
		break ;
	if ( !strcmp(pavadinimas,tpavadinimas) )
	{
		laisvu_egz=(laisvu_egz-1);

		temp.write((char *) this, sizeof(knygos)) ;
	}
	else
		temp.write((char *) this, sizeof(knygos)) ;
}
file.close() ;
temp.close() ;

file.open("BOOK.DAT", ios::out) ;
temp.open("temp.dat", ios::in) ;
temp.seekg(0,ios::beg) ;
while ( !temp.eof() )
{
	temp.read((char *) this, sizeof(knygos)) ;
	if ( temp.eof() )
		break ;
	file.write((char *) this, sizeof(knygos)) ;
}
file.close() ;
temp.close() ;
}

void main(){
knygos ob;
char pavadinimas[30]="php";
ob.update_knyga(pavadinimas);

}

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...