Сдвинуть содержимое файла

Discussion in 'WASM.BEGINNERS' started by M4DZ5A, Sep 21, 2006.

  1. M4DZ5A

    M4DZ5A New Member

    Blog Posts:
    0
    Как сдвинуть содержимое файла на 64 байта и заполнить освободившееся пространство?
     
  2. censored

    censored New Member

    Blog Posts:
    0
    Code (Text):
    1. FILE*in = fopen(fname, "rb"); assert(in);
    2. size_t flen = filelength(fileno(in))+64;
    3. unsigned char * buf = (unsigned char *)malloc(flen); assert(buf);
    4. fread(&buf[64], 1, flen-64, in);
    5. fclose(in);
    6. for (int i=0; i<64/4; i+=4) {
    7.   buf[i+0] = 'h';
    8.   buf[i+1] = '0';
    9.   buf[i+2] = '0';
    10.   buf[i+3] = 'y';
    11. }
    12. FILE*out = fopen(fname, "wb"); assert(out);
    13. fwrite(buf, 1, flen, out);
    14. fclose(out);
    15. free(buf);
     
  3. M4DZ5A

    M4DZ5A New Member

    Blog Posts:
    0
    Спасибо
     
  4. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Blog Posts:
    0
    M4DZ5A
    средствами С++ еще проще! Читай про файловые потоки от Джесса Либерти "Освой самостоятельно С++ за 21 день" на нате можно качнуть! :)
     
  5. IceStudent

    IceStudent Active Member

    Blog Posts:
    0
    EvilsInterrupt
    И где там проще? А ну покажи пример.
     
  6. censored

    censored New Member

    Blog Posts:
    0
    EvilsInterrupt
    menshe strok chto li?
     
  7. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Blog Posts:
    0
    censored
    Мало телодвижений!

    Открой справочник Шилдта по С\С++ 2 издание, там есть!
     
  8. censored

    censored New Member

    Blog Posts:
    0
    sample?
     
  9. rain

    rain New Member

    Blog Posts:
    0
    or link