Podział pliku na pakiety

0

Witam, mam problem z pewnym zagadnieniem. Chce dowolny plik podzielić na pakiety o jakiejśtam wielkości następnie potem te pakiety połączyć. Na razie nie chce kodowania sieciowego - wybieram plik, dziele na pakiety i nastepnie aby sprawdzić czy działa zapisuje to co mam pod inna nazwa.

na razie wiem tylko że moge stworzyć strukture header , licze rozmiar pliku i liczbe pakietow, ktora bedzie potrzebna ... no i to by było na tyle

Gdyby ktoś mógłby mi wytłumaczyć albo podać do jakiegoś dobrego tutoriala byłbym wdzięczny ... nic prostego nie moge znaleźć

1

Jedynie co potrzebujesz to arytmetyka z podstawówki.

streamsize Wczytaj_pakiet_o_podanym_numerze(ifstream &fs,const char *bufor,unsigned numer,unsigned ilosc_pakietow)
  {
   fs.clear();
   fs.seekg(0,ios::end);
   streamsize rozmiar=fs.tellg(),ile_znakow_wczytac=(rozmiar+ilosc_pakietow-1)/ilosc_pakietow;
   if(bufor)
     {
      fs.seekg(numer*ile_znakow_wczytac,ios::beg);
      return fs.read(bufor,ile_znakow_wczytac).gcount();
     }
   return ile_znakow_wczytac;
  }

ifstream fs("plik.txt",ios::in|ios::binary);
char *bufor=new char[Wczytaj_pakiet_o_podanym_numerze(fs,0,0,20)];
for(unsigned i=0;i<20;++i) Wczytaj_pakiet_o_podanym_numerze(fs,bufor,i,20);
0

a nie trzeba tym seekg na poczatek pliku potem wrocic ?

0

sorka nie doczytalem kodu :P

1 użytkowników online, w tym zalogowanych: 0, gości: 1