данные в один файл

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
AnGI_Burn
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 23
Зарегистрирован: 24.09.2007 (Пн) 13:50

данные в один файл

Сообщение AnGI_Burn » 25.09.2007 (Вт) 18:49

Значит, делаю записную книжку для своих нужд. У меня пока записи сохраняются в виде отдельных файлов. Одна запись - в один файл. И меня интересует вопрос, как ВСЕ эти записи помещать в ОДИН файл и впоследствии считывать их? :?: Все примеры которые я находил также сохраняли записи в отделные файлы, либо в базу данных Access, что меня совсем не устраевает.
Подскажите пожалуйста, какой либо пример или алгоритм, чтоб я мог это реализовать.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 25.09.2007 (Вт) 19:02

Алгоритм - любой. Пример - делать некогда.

Любители XML сейчас предложал своё... :)


Вкратце:

Таблица оффсетов на заголовки. Таблицы заголовков. Данные.

Классическая схема.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Сообщение iGrok » 25.09.2007 (Вт) 19:02

М.б. xml?

UPD: Я не любитель XML!!!! ))))
Вариант Хакера - более универсален.
label:
cli
jmp label

AnGI_Burn
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 23
Зарегистрирован: 24.09.2007 (Пн) 13:50

Сообщение AnGI_Burn » 25.09.2007 (Вт) 19:34

Ну допустим, сделаем таблицу. Хотя как будет происходить удаление записи я пока не представляю. Примером конечно легче было бы, ИМХО. Да и где сделать таблицу, в конце файла или в начале? :?:

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 25.09.2007 (Вт) 19:54

Таблицу - хоть-где. Она может прыгать по файлу засчёт того, что в начале файлов идёт таблица оффсетов на другие таблицы.

Таблица оффсетов должна быть по фиксированному оффсету.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

AnGI_Burn
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 23
Зарегистрирован: 24.09.2007 (Пн) 13:50

Сообщение AnGI_Burn » 25.09.2007 (Вт) 20:09

Так, ну пока понятно. Попробую, а там видно будет...

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 25.09.2007 (Вт) 23:24

Если очень хочется текстовый файл, то можно ещё с ним работать через ODBC как с обычной БД...
Salus populi suprema lex

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 26.09.2007 (Ср) 7:46

ой, можно подключить дбф-файл к акцесс а потом вывести в ексель и работать с ним! а еще можно подключить туда же текстовый или цсв-файл. :shock: Ребята! Вспомните бритву Оккама!
а ты, уважаемый AnGI_Burn, не пыщщ людям мозги и пользуйся базами данных. они для того и предназначены :!:
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

AnGI_Burn
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 23
Зарегистрирован: 24.09.2007 (Пн) 13:50

Сообщение AnGI_Burn » 26.09.2007 (Ср) 10:20

Ой, эти Access сплошной гемор. Также добавлю, что мои записи имеют форматирование и сохраняются в RTF документах. А Access сохраняет форматирование?

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 26.09.2007 (Ср) 12:06

А текстовый файл сохраняет форматирование? В чём геморность Акцесса?
Salus populi suprema lex

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 26.09.2007 (Ср) 12:13

Да блин, во всем :)

Храните подобные данные в XML и будет вам счастье.

Холивар, холивар, холивар :)
I don't understand. Sorry.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Сообщение iGrok » 26.09.2007 (Ср) 12:31

RTF в XML?
Ммм.. Господин знает толк в извращениях!
label:
cli
jmp label

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Сообщение jangle » 26.09.2007 (Ср) 13:28

ИМХО в этой ситуации лучше всего хранить данные в COM Storage.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 26.09.2007 (Ср) 14:21

dr.MIG писал(а):А текстовый файл сохраняет форматирование? В чём геморность Акцесса?


IMHO - видимо изучать лень и кажется что самому что-либо изобрести проще...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 26.09.2007 (Ср) 14:47

iGrok

А кто сказал, что форматирование хранится только в RTF? Есть еще и другая разметка - тот же HTML.

Хотя в CDATA можно что угодно запихнуть.
I don't understand. Sorry.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 26.09.2007 (Ср) 15:11

Andrey Fedorov
А ведь и на самом деле проще.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Сообщение iGrok » 26.09.2007 (Ср) 17:00

RayShade писал(а):iGrok
А кто сказал, что форматирование хранится только в RTF? Есть еще и другая разметка - тот же HTML.
Хотя в CDATA можно что угодно запихнуть.
Ну если у человека уже rtf...
label:
cli
jmp label

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 26.09.2007 (Ср) 20:34

Ну все возможные варианты предложили, осталось только выбрать... А если уж заговорили о простоте и извращениях, то можно предложить записи сохранять в отдельные текстовые файлы, которые запихивать в zip-архив :)
ЗЫ. лично я, как бы не любил xml, в данном случае использовал бы способ Хакера.
Salus populi suprema lex

AnGI_Burn
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 23
Зарегистрирован: 24.09.2007 (Пн) 13:50

Сообщение AnGI_Burn » 27.09.2007 (Чт) 11:18

Да, широкий выбор :) . Ладно, спасибо за предложенные решения. Уж решу как-нибудь данную проблему.

t116
Бывалый
Бывалый
 
Сообщения: 209
Зарегистрирован: 12.01.2007 (Пт) 12:11

Сообщение t116 » 27.09.2007 (Чт) 11:52

AnGI_Burn писал(а):Да, широкий выбор :) . Ладно, спасибо за предложенные решения. Уж решу как-нибудь данную проблему.


А если просто использовать рекордсеты для начала?

Вот, например, телефонный справочник. Делал я его в то время, когда у меня еще стоял Windows 3.11, по этому проект написан на VB 3.0. Попробуй разобраться, может подойдет.
Вложения
Telephone Book.zip
Телефонный справочник
(12.69 Кб) Скачиваний: 35

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 27.09.2007 (Чт) 15:14

Денис
Есть идея :!: :idea:
Сохраняй их в бд. а форматируй с помощью BBCode
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

AnGI_Burn
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 23
Зарегистрирован: 24.09.2007 (Пн) 13:50

Сообщение AnGI_Burn » 28.09.2007 (Пт) 13:21

Ну вот, дело сдвинулось с мертвой точки. :) Решил я всё-таки сделать Access базу. Сделал проект, ну вобщем всё как обычно. Есть 2 колонки: Название и Текст.
И меня интересует вопрос, как сделать, чтоб при двойном клике по строке в таблице открывалась форма с содержимым колонки Текст? :?:

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 29.09.2007 (Сб) 14:25

AnGI_Burn
то-есть, как я понимаю ты и интерфейс хочешь внутри мдб-файла реализовать? не айс, но ладно.
на вопрос отвечаю: никак. твои юзеры вообще не должны видеть таблиц.
при открытии файла автоматом стартует одна из форм (которая сама может иметь табличный вид) а уж на ней ты и отрабатывай нужные тебе события.
Кста, правильнее сделать вообще проект на вб, который через адо подключается к мдб-файлу и работает с ним.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

AnGI_Burn
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 23
Зарегистрирован: 24.09.2007 (Пн) 13:50

Сообщение AnGI_Burn » 01.10.2007 (Пн) 12:01

Кста, правильнее сделать вообще проект на вб, который через адо подключается к мдб-файлу и работает с ним

Всё, я так и сделал. :D Слева TreeView с заголовками записей. Справа - RichTextBox. Всё работает. А уж над форматированием, я как-нибудь подумаю.

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 01.10.2007 (Пн) 16:50

ИМХО, оптимальный способ хранения данных - не XML или базы данных, и даже не самодельный формат(неунифицированность). Лучше всего юзать самый обыкновенный Structured Storage - просто, удобно, не сильно разросшийся файл.
Изображение


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 42

    TopList