Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Запись файлов в файл / 4 сообщений из 4, страница 1 из 1
26.09.2004, 17:00
    #32711886
'FaTsO'
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись файлов в файл
Ну вот такой вопрос:
Есть TListView и с ним нужно сделать следующее:
1) Добавить в TListView файлы (любые *.avi, *.mp3 короче все что угодно)
TLstView имеет style->vsReport, а columns: Имя, Размер, Тип, Изменен
Нужно чтобы при добавлении файла сооответствующие колонки заполнились.
2) Сохранить все добавленые в TListView файлы сохранить в какой-нибудь файл
Ну например *.tap
3) Потом при открытии этого файла в TListView отображались эти файлы и их можно было сохранить у себя на харде...)))

Заранее большое спасибо за помощь
...
Рейтинг: 0 / 0
26.09.2004, 18:30
    #32711907
zuzu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись файлов в файл
2 FaTsO

это вообсщето форум для того чтобы ты задал какоито вопрос по проблеме что у тебя поевилось во времеа программирования своего детищя а не для того чтобы тебе тут написали готовое решение товоей задачки, я думаю тебе задали лабу и ты просто взял и кинул ее в форум - станно будет если ктото за просто так напишет все ето для тебя ..., да и есче, если любишь пользоватся готовым то переходи в админы ...
...
Рейтинг: 0 / 0
27.09.2004, 10:30
    #32712216
Siebentearbeit
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись файлов в файл
2 zuzu, нет, это постоянное событие

2 'FaTsO', ай маладэтс! :)
Давно ничего такого не спрашивал.

1) Чтобы добалять файлы, нужен соответствующий механизм/инструмент выбора этих файлов с диска.
Могу предложить GetOpenFileName - функция-диалог.

Кроме того, как я понял, ListView у тебя уже готов, в смысле колонок? ;)

Если нет, то LVM_INSERTCOLUMN - это то, что тебе надо для заведения колонок.

Дальше, нашёл файл. Надо его загнать в лист-вю.

Первая ячейка записи добавляется через LVM_INSERTITEM, все остальные через LVM_SETITEM,

разбор файла сам сделаешь, через строковые функции. Тут ещё полезна бывает функция strrchr которая ищет символ с хвоста (для посика "." чтоб отделить расширение и для "\" чтоб отделить путь)

2) ура, файлы набили в грид. Идём дальше.

Чтобы всё собрать в один файл, тебе надо хранить информацию в этом файле обо всём, что ты туда набил.
Тут уж как сам придумаешь... Вариант - в самом начале хранить таблицу начала файла и его длинны. Или в самом конце, у всего есть свои плюсы и минусы. У второго варианта плюс - складываешь в один файл все файлы, запоминаешь в момент записи показания указателся (FILE*) и потом спокойно пишешь всё это с именами файлов в хвост. Проблема в том, как потом эту таблицу искать. А у первого варианта - как под неё место в начале файла выделить (ну, в принципе, можно по списку в лист-вю посчитать)

3) По этой таблице смотришь названия файлов, создаёшь их на диске и побайтно копируешь согласно таблице.

А вообще советую раздобыть где-то dll от винрара :) и пусть он всё это за тебя делает, плюс ещё пакует. Ну это если тебе не надо защитить список содержимого(как например делает злобный Фаргус)

Удач!
...
Рейтинг: 0 / 0
27.09.2004, 10:40
    #32712235
JibSkeart
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запись файлов в файл
2Siebentearbeit
Ну с ListView он работать будет по другому
тоесть в BC++



 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Запись файлов в файл / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]