Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Возможно ли создать массив файлов? 
:(
    Опции темы
myxa_0
Дата 13.2.2007, 06:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 18.1.2007

Репутация: нет
Всего: нет



Задача стоит такая:
Необходимо открыть несколько файлов, кол-во заранее не известно пути к файлам записываются в мемо.
Возможно ли создать массив файлов (например, как-нибудь так: ArrayOfFile:array of file;) ?
PM MAIL   Вверх
Insert
Дата 13.2.2007, 07:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 13.4.2006

Репутация: 1
Всего: 1



зачем файлов, храни ссылки на них и открывай когда нада.
--------------------
пьяный русский кодер практически непобедим
PM MAIL   Вверх
aktuba
Дата 13.2.2007, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 16
Всего: 38



myxa_0, а зачем ты собираешься хранить кучу файлов в памяти? Это не есть хорошо! Сделай как сказал Insert, сохраняй только пути к файлам (например в StringList) и открывай файлы только когда необходимо...


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Yanis
Дата 13.2.2007, 09:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Цитата(myxa_0 @  13.2.2007,  07:03 Найти цитируемый пост)
Возможно ли создать массив файлов (например, как-нибудь так: ArrayOfFile:array of file;) ? 

Именно так он (массив) и создаётся.


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
myxa_0
Дата 14.2.2007, 04:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 18.1.2007

Репутация: нет
Всего: нет



Файлы любого типа. Размеры файлов колеблются в пределах 5кб-100мб

Задача следующая: необходимо сравнить побайтно файлы (кол-во заранее не известно, пути берутся из Memo1) и если во всех файлах по каким-либо адресам они совпадают, то записать адрес и значение в Memo2.
PM MAIL   Вверх
Yanis
Дата 14.2.2007, 09:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Цитата(myxa_0 @  14.2.2007,  05:15 Найти цитируемый пост)
Задача следующая

В чём проблема? Дерзай!


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
myxa_0
Дата 14.2.2007, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 18.1.2007

Репутация: нет
Всего: нет



Цитата(Yanis @ 14.2.2007,  09:14)
В чём проблема? Дерзай!

А не будет этот массив "жрать" слишком много оперативки?
PM MAIL   Вверх
Yanis
Дата 14.2.2007, 10:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Цитата(myxa_0 @  14.2.2007,  10:38 Найти цитируемый пост)
А не будет этот массив "жрать" слишком много оперативки?

Нет.
Всё становится ясно, когда знаешь структуру динамического массива в Delphi:
Код
Dynamic array memory layout (Win32 only)
 ___________________________________________________________________________________
| Offset                Contents
|-----------------------------------------------------------------------------------
| -8                    32-bit reference-count
| -4                    32-bit length indicator (number of elements)
| 0..Length * (size of element) -1    array elements
 -----------------------------------------------------------------------------------


Ну а весь остальной объём занимаемой памяти зависит от алгоритма сравнения файлов.


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Beltar
Дата 14.2.2007, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 627
Регистрация: 11.1.2006

Репутация: 3
Всего: 7



Это задача из разряда отображения файлов, если так охота их все кэшировать. Или считать просто в байтовые массивы и сравнивать. После этого просматривать содержимое файла будет одно удовольствие. А с памятью пусть винда разбирается, у нее свап-файл большой.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. smile(с) я, хотя может и нет
Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере.
PM MAIL   Вверх
Yanis
Дата 14.2.2007, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Цитата(Beltar @  14.2.2007,  14:02 Найти цитируемый пост)
А с памятью пусть винда разбирается, у нее свап-файл большой.

Отличный совет от программиста программисту!


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0465 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.