Как реализовать сохранение информации?

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

Как реализовать сохранение информации?

Сообщение mavrados » 19.09.2006 (Вт) 10:57

Добрый день.
Помогите начинающему!

Есть форма в которой пользователь заполняет ряд полей (всего их около 200)

необходимо после ввода сохранить данные, что бы в дальнейшем можно было просмотреть/изменить.


Как это лучше реализовать?
Подскажите плз направление/идею. Раньше с такой задачей не сталкивался.

Заранее благодарен.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 19.09.2006 (Вт) 11:20

Ндя... Можно конечно ответить, что для сохранения данных существуют такие вещи как запись в файл, запись в базу данных (что строго говоря тоже есть запись в файл) и даже запись в ini-файл или реестр (что правда в данном случае явно неприемлимо), но что сам то автор думает по этому поводу? Неужто никаких мыслей?
Весь мир матрица, а мы в нем потоки байтов!

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

Сообщение RayShade » 19.09.2006 (Вт) 12:29

Направление - поиск по форуму. Это обсуждалось раз 100 уже.

Что самое интересное, вопрос не имеет отношения к специфике программирования на VB.

Это просто вопрос здравого смысла :) И включения головы.

lister
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 389
Зарегистрирован: 15.01.2005 (Сб) 7:34
Откуда: Страна оления

Сообщение lister » 19.09.2006 (Вт) 12:29

Автор скорее всего не умеет делать ни первое ни второе ни третье, отсюда и такой вопрос... А в этом случае нужно просто купить книжку или поковыряться в интернете и научиться.

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 19.09.2006 (Вт) 13:24

Вообще если поля текстовые\числовые то в VB6 проще делать так:
Код: Выделить всё
'Объявить структуру данных
private type TheData
String1 as string
String2 as string
end type

dim mData as TheData

'для чтения
open file_name for binary as #1
get#1,,mData
close #1

'для записи
open file_name for binary as #1
put #1,,mData
close #1
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

AntonGV
Бывалый
Бывалый
 
Сообщения: 234
Зарегистрирован: 24.05.2006 (Ср) 12:10
Откуда: г. Пермь

Сообщение AntonGV » 19.09.2006 (Вт) 16:29

А как дописать данные в конец файла? Я делаю так
Код: Выделить всё
Private Type mType
str1 As String
str2 As String
End Type

Dim m As mtype

Private Sub cmdRead_Click()
Open "C:\1.exe" For Random As #1
Get #1, FileLen("C:\1.exe"), m
Close #1
Text1 = m.str1
Text2 = m.str2
End Sub

Private Sub cmdSave_Click()
m.str1 = Text1
m.str2 = Text2
Open "C:\1.exe" For Random As #1
Put #1, FileLen("C:\1.exe"), m
Close #1
End Sub


но при этом файл, в который дописываю данные, увеличивается во много раз. Что делать?

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 19.09.2006 (Вт) 18:55

Замени Random на Binary. И обрати внимание, что в примере ANDLL именно Binary.
Изображение

AntonGV
Бывалый
Бывалый
 
Сообщения: 234
Зарегистрирован: 24.05.2006 (Ср) 12:10
Откуда: г. Пермь

Сообщение AntonGV » 19.09.2006 (Вт) 19:55

Так у меня не получается считать информацию из файла
Код: Выделить всё
Private Sub cmdRead_Click()
Open "C:\1.exe" For Binary As #1
Get #1, FileLen("C:\1.exe"), m
Close #1
Text1 = m.str1
Text2 = m.str2
End Sub

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 19.09.2006 (Вт) 21:19

Наверное не надо ставить указатель в конец файла...
Lasciate ogni speranza, voi ch'entrate.

mavrados
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 12.09.2006 (Вт) 12:04

Сообщение mavrados » 20.09.2006 (Ср) 8:42

:) Добрый день.

Спасибо всем за советы.
Сделал все сам. Получилось неплохо...
использовал способ похожий на приведенные выше.

Вопрос был немного не про это....

Что все это можно прочитать в книгах я и сам знаю. Читать умею, во всяком случае мне так кажется :)
Меня больше интересовало есть ли смысл использовать такие средства как Access, SQL, Excel (еще что-то) или для столь незначительного объема информации (слышал что VB 6.0 не дружит с Access 2003 - нужна более ранняя версия. Это правда?) лучше использовать двоичные файлы (*.bin), или текстовые?

Хотел услышать мнение людей более опытных в этом вопросе.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 20.09.2006 (Ср) 9:17

Просто для 200 значений использовать БД действительно не стоит. Однако, если эти 200 полей являются всего лишь одной записью, то БД самый раз. В противном случае лучше использовать файл собственного формата. А уж в каком виде представлять информацию в файле это зависит от того что ты хочешь. Если тебе надо чтобы пользователь мог редактировать эту информацию например в "Блокноте", то лучше использовать "текстовый" файл. Если же такой необходимости нет, то проще записывать информацию в "бинарный" файл.

З.Ы. Надеюсь упоминание мною "текстового" и "бинарного" файлов не перейдет в дискуссию о существовании особого вида файлов, под названием "текстовые"?
Весь мир матрица, а мы в нем потоки байтов!


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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 134

    TopList