wczytywanie plików, gdzie jest bład??

0

z pomoca kolegi napisałem funkcje która wczytuje plik i przedstawia go w komponencie StringGrid w postaci hexowej
na formie jest button i stringgrid
niestety sa róznice w tym co przedstawia ten prog a edytor hexowy
w co którejs komórce(nierówne odstepy) zamiast odpowieniej liczby jest zapisane FFFF :(

rzućcie na to okiem prosze

void __fastcall TForm1::Button1Click(TObject *Sender)
{
        ULONG size;
        ifstream infile;
        int handle = FileOpen("C:\\Kawa.bmp",fmOpenRead);
        size = GetFileSize((void*)handle,&size);
        ShowMessage(IntToStr(size).c_str());
        FileClose(handle);

        buff = new char[size];
                infile.open("C:\\Kawa.bmp",ios::in|ios::binary);
                        infile.read(buff,size);
                infile.close();
        StringGrid1->RowCount = size/16+1;
        for(int y=0;y<(size/16);y++)
                for(int x=0;x<16;x++)
                {
                        StringGrid1->Cells[x][y] = IntToHex(buff[y*16+x],2);
                }
        delete [] buff;
}

0

moze kogos to interesuje

wystaczy zmienic typ zmiennej buff z char na byte

// :D :D :D typedef unsigned char byte;
// wystarczy dopisac przed char unsigned, albo zmienic ustawienia kompilatora [mf]

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