Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.25;
Скачать: CL | DM;

Вниз

Проблема с записью....   Найти похожие ветки 

 
Alexdeil   (2007-02-08 11:53) [0]

Здравствуйте специалисты!

Имеется запись - заголовок из 25 байт (A - R) и массив байт (64 байта):
type
      Pak = record
        A     :byte;
        B     :byte;
        C     :byte;
        D     :byte;
        E     :word;
        F     :byte;
        G     :byte;
        K     :word;  
        L     :word;
        Lt    :longword;
        M    :word;
        Mt   :longword;
        P     :word;        
        R     :byte;  
        S     :array[1..64] of byte;
   end;
Осуществляется запись и чтение в файл только одной записи - все работает, но есть непонятные мне вопросы
- почему размер файла с одной записью больше 89 байт (25 +64 = 89) = 92 байта,
- почему при просмотре файла в Hex-редакторе поле М (тип word) представляется в виде 4-х байт, а массив S (64 байта) увеличен до 65 байт.
Запись в файл осуществляю следующим образом:
var K:integer;
begin
...........................
K:=FileCreate("proba.dat");
FileWrite(K,Pak,SizeOf(Pak));
FileClose(K);  
end;
Подскажите, что не так.


 
TRUNK ©   (2007-02-08 11:56) [1]

Включи упаковку:

Pak = packed record
{.........}
end

или лучше так:

{$A-}
Pak = record
{.........}
end
{$A+}


 
Alexdeil   (2007-02-08 12:05) [2]

Спасибо! Все ОК!



Страницы: 1 вся ветка

Текущий архив: 2007.02.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.033 c
15-1170408815
pasha_golub
2007-02-02 12:33
2007.02.25
PPP & Multilink


4-1160766541
gellmar
2006-10-13 23:09
2007.02.25
Как реализовать парсинг PE64 файлов под win32 на делфи?


9-1144849395
Yegorchic
2006-04-12 17:43
2007.02.25
GLMaterialLibrary и FreeForm ы


2-1170273176
valwin
2007-01-31 22:52
2007.02.25
Отрисовка маленького примитива на канве с учётом угла поворота!


2-1170896851
Vemer
2007-02-08 04:07
2007.02.25
Подобие TLabel