Вниз
Скачать: CL | DM;

структура из файла   Найти похожие ветки 

← →
Mad_Ghost ©   (2002-10-09 07:26) [0]

Здравствуйте уважаемые мастера.
Вопрос такой, есть файл созданный на Си++, который имеет стуктуру
typedef struct
{
long nmax,
long nrec,
long index,
...
}
есстественно не в текстовом виде там представлены числа, а в бинарном, т.е. как они в структуре располагаются, так и на диске, я хочу на Делфи всю эту стуктуру прочитать, и разложить по нужным переменным, какой для этого способ есть?
подскажите пожалуйста


← →
MBo ©   (2002-10-09 07:47) [1]

type TA=record
nmax: Integer;
nrec: Integer;
...
end;


← →
Mad_Ghost ©   (2002-10-09 08:19) [2]

Это понятно :)
меня интересует вопрос как достать из файла эти переменные, и поместить их в структуру?
т.е. как работать с файлом.


← →
MBo ©   (2002-10-09 08:23) [3]

var f:file of ta;
a:ta;
см. AssignFile,reset,read



← →
Mad_Ghost ©   (2002-10-09 15:20) [4]

абсолютный решпект :)))))
родина тебе этого не забудет :)


← →
Romkin ©   (2002-10-09 15:28) [5]

только type TA=packed record, имхо


← →
MBo ©   (2002-10-09 15:33) [6]

>Romkin
тут уж предоставленной информации недостаточно. Если все long, то автоматом получается packed, а если нет, в Cях тоже разные директивы упаковки есть


← →
Mad_Ghost ©   (2002-10-09 15:37) [7]

Кстати, а если файл допустим, имеет не одну структуру, а например две. т.е. который был описан выше, это заголовок.
а ещё есть само тело, как такое отразить в программе?


← →
MBo ©   (2002-10-09 15:40) [8]

тогда file of ... не пойдет, надо блочно читать.
TFileStream-очень удобно


← →
Mad_Ghost ©   (2002-10-09 15:43) [9]

TFileStream, это как можно немножко поподробней?

или можно сделать так, например reset ом, открыть, как первую структуру, прочитать, потом закрыть, открыть как вторую структуру, установить указатель, и читать, читать, все 50000 записей?
можно так, или про TFileStream поподробней, может ссылка какая нибудь есть?


← →
MBo ©   (2002-10-09 15:52) [10]

reset-ом нельзя.

про TFileStream все в хелпе.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.013 c
14-92660
Борис
2002-10-07 11:21
2002.10.28
Где скачать полную версию InstallShield


1-92604
Cr@sh
2002-10-12 21:01
2002.10.28
Сопоставление процедур.


1-92451
Vitaliy79
2002-10-17 07:38
2002.10.28
Как использовать функции ICQ


4-92818
Dark Hunter
2002-09-16 13:25
2002.10.28
Как можно шифровать файлы через API средствами NTFS?


3-92353
KidMan
2002-09-30 22:16
2002.10.28
Соеденение с MSSQL




   Наверх