![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
ne0n |
|
|||
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
Записываю я в файл некие данные. Порывшись в DRKB узнал про Size, которая возрашает кол-во байт в файле. Вобщем либо я туплю либо еще что-то, но не как не могу вкурить, как ей воспользоваться. Подскажите. Плиз .
Это сообщение отредактировал(а) ne0n - 12.5.2006, 18:16 |
|||
|
||||
drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 5 Всего: 8 |
В типизированых файлах Size возвращает не количество байт, а количество структур (записей)
-------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
ne0n |
|
|||
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
||||
|
||||
drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 5 Всего: 8 |
домножай полученое значение на размер записи и будет
![]() кста seek работает точно также. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
ne0n |
|
|||
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
Всмысле? Примерчик моно? Seek он переходит на заданное кол-во. |
|||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
Пользуйся лучше потоками и все будет чики
![]()
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 5 Всего: 8 |
да именно так в заданую позицию. пример ищи с хелпе. помоему такм все понятно. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
Yanis |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2937 Регистрация: 9.2.2004 Где: Москва Репутация: 72 Всего: 111 |
ne0n, drkot
Коллеги, что за функция Size? Такой функции в языке Delphi я не знаю, но я знаю функцию GetFileSize, которая используется в Delphi для определения размеров файлов. |
|||
|
||||
Nickel |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 7.2.2006 Репутация: 2 Всего: 4 |
Видимо имелась ввиду функция FileSize, но я бы тоже, например, предпочёл GetFileSize.
|
|||
|
||||
Guedda |
|
|||
![]() Подрывник ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3137 Регистрация: 27.12.2005 Где: Ростов-на-Дону Репутация: 14 Всего: 78 |
Еще есть для структур SizeOf
-------------------- Ll 2 |
|||
|
||||
ne0n |
|
|||
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
Она есть (во всяком случии DRKB так написано):
поподробней... |
|||
|
||||
Guedda |
|
|||
![]() Подрывник ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3137 Регистрация: 27.12.2005 Где: Ростов-на-Дону Репутация: 14 Всего: 78 |
Получает размер в байтах структуры...
Допустим
Вернет число 2 (два байта). А вообще... Что именно нужно? Подробнее... Может мы тебя не так понимаем... -------------------- Ll 2 |
|||
|
||||
ne0n |
|
|||
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
Ок. попытаюсь объяснить: Есть файл. В него постоянно дописываюся значения. А точнее записывается целая структура типа которой привел Guedda. При работе с такими файлами чтобы дописать значение в конец нужно сначало при помощи Seek перейти на последний байт(а в моем случие на последнию структуру) и потом уже писать, иначе произойдет перезапись первых байтов(структур). Вроде усе ![]() |
|||
|
||||
Yanis |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2937 Регистрация: 9.2.2004 Где: Москва Репутация: 72 Всего: 111 |
К сведению FileSize в своей работе и использует функцию Windows API GetFileSize. Судя по всему бональная ошибка ![]() Ну так и переходи с помощью Seek в конец файла, в чём загвоздка? Примерно так:
Это сообщение отредактировал(а) Yanis - 14.5.2006, 21:27 |
||||
|
|||||
ne0n |
|
|||
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
Енто конечно хорошо, но мне еще надо знать кол-во структур в файле. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |