Аватар для Narkot1k
0 / 0 / 1
Регистрация: 26.01.2011
Сообщений: 33

блокнот = база данных, добавление и поиск

06.02.2011, 18:38. Показов 2456. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хотелось бы для своего удобства сделать утилиту в которую я смогу забивать данные из текст1 текст2 текст3, которые будут ссохраняться в файл, таким типом : текст1,текст2,текст3;текст1,текст2,текст 3 и так до бесконечности+ приделать поиск по этим данным, пример :мне нужно найти данные, знаю только текст2, ввожу и мне показывает текст1,текст2,текст3 в виде маленькой табличке.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.02.2011, 18:38
Ответы с готовыми решениями:

База данных на основе массива записей: добавление, удаление, поиск записей
Комрады, учусь асму, а некоторые моменты не осиливаю :( задача в реализовании некой базы данных с записями "фамилия",...

База универа добавление данных
Есть база универа. Один момент не совсем понятен. Ну как бы- Есть корпус- у одного корпуса множество Факультетов- У одного факультета...

База Данных (Добавление нового раздела)
Привет всем! У меня имеется база для активации программы.. Вид: Но мало того у каждого пользователя должно быть пару функций.. ...

11
06.02.2011, 18:59
 Комментарий модератора 
gaw, форум создан для того чтобы отвечать на вопросы в темах, а не в ЛС. Не хочешь отвечать публично - проходи мимо, иначе - п. 3.8 правил.
0
 Аватар для Narkot1k
0 / 0 / 1
Регистрация: 26.01.2011
Сообщений: 33
07.02.2011, 12:07  [ТС]
gaw,
я новичок на этом форуме, что мне надо сделать, чтобы вы мне подсказали как решить мою задачу?
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
07.02.2011, 14:13
Посмотри тему: Работа с файлами.
И пригодится функция Split.
Один из вариантов: Считать весь файл в переменную.

Visual Basic
1
2
3
4
5
   Dim File As String, CF As String 
   File = "d:\ca.log" 
   Open File For Binary As #1 
      CF = Input(FileLen(File), 1)   'загpyзить в пеpеменyю CF вcе cодеpжимое файла 
   Close #1
Разбить Split на строки.

Visual Basic
1
2
Dim ArrayLines() as  String 
ArrayLines = Split(CF, vbNewLine)
А дальше в цикле проверять значение
Visual Basic
1
2
3
4
5
6
7
8
Dim J
dim S()  as  String 
 
For J = 0 to Ubound(ArrayLines)-1
S = Split(ArrayLines(J), ",") 
if S(1) = "искомое значение" Then ' трататата
Exit For
next J
Формат записи лучше изменить на :
текст1,текст2,текст3
текст1,текст2,текст3
Так будет проще работать с файлом: можно считать целиком и разбить на строки, можно считывать построчно, можно считывать по три переменных.
А дальше в цикле проверять значение
1
 Аватар для Narkot1k
0 / 0 / 1
Регистрация: 26.01.2011
Сообщений: 33
07.02.2011, 15:25  [ТС]
Alex77755,

Цитата Сообщение от Alex77755 Посмотреть сообщение
Формат записи лучше изменить на :
текст1,текст2,текст3
текст1,текст2,текст3
Так будет проще работать с файлом:
согласен,
вот у меня пока что получилось:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Dim f As Integer
Private Sub Command1_Click()
f = FreeFile
Open App.Path & "\baseban.txt" For Output As f
Print #f, "База данных бана"
Close f
MsgBox ("Был создан База-файл")
End Sub
 
Private Sub Command2_Click()
Dim FN As Integer
FN = FreeFile
Dim FName As String
FName = "\baseban.txt"
Open FName For Output As #FN
Print #FN, Text1, Text2, Text3, Text4
Close #FN
End Sub
файл создается, но текст туда не попадает..
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
07.02.2011, 15:59
Всё попадает. Только так путь указывать некорректно
1
 Аватар для Narkot1k
0 / 0 / 1
Регистрация: 26.01.2011
Сообщений: 33
07.02.2011, 16:04  [ТС]
Alex77755, Да, спасибо, разобрался,
Последняя загвоздка:
Данные записывает, а вот как его заставить делать энтер и вводить новые данные?
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
07.02.2011, 16:33
Ты ответы читаешь?
Я тебе на мыло писал. Открой файл не не запись а на дозапись: Append вместо Output
1
 Аватар для Narkot1k
0 / 0 / 1
Регистрация: 26.01.2011
Сообщений: 33
07.02.2011, 17:23  [ТС]
Алексей больше спасибо за ваше терпение, и за то что тычете меня носом на мои ошибки, огромное спасибо, помогло, и кое что хотел уточнить на счёт поиска, можете считать меня идиотом, но я никак не могу понять, какой код " либо считывать по три переменных " нечего не получается, помогите пожалуйста

Добавлено через 11 минут
Ой простите *Александр
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
07.02.2011, 18:31
Надо читать ответы. Я же не для себя их пишу. Придётся цитировать себя:
Считать файл целиком:
Visual Basic
1
2
3
4
5
   Dim File As String, CF As String 
   File = "d:\ca.log" 
   Open File For Binary As #1 
      CF = Input(FileLen(File), 1)   'загpyзить в пеpеменyю CF вcе cодеpжимое файла 
   Close #1
Разбить Split на строки.
Visual Basic
1
2
 Dim ArrayLines() as  String 
ArrayLines = Split(CF, vbNewLine)
А дальше в цикле проверять значение
Visual Basic
1
2
3
4
5
6
7
8
9
Dim J
Dim S()  as  String 
For J = 0 to Ubound(ArrayLines)-1
S = Split(ArrayLines(J), ",") 
if S(1) = "искомое значение" Then 
' трататата
Exit For
end if
next J
Я думю у тебя должно было хватить фантазии, что бы:
1. Указать свой путь к файлу
2. Понять, что под "искомое значение" надо понимать:
знаю только текст2
3. А вместо "трататата" подставить что-то типа Текст1.текст = S(0): Текст3.текст = S(2)

И не стесняйся читать учебники - поверь там много полезного
2
 Аватар для Narkot1k
0 / 0 / 1
Регистрация: 26.01.2011
Сообщений: 33
11.02.2011, 15:42  [ТС]
Цитата Сообщение от Alex77755 Посмотреть сообщение
Я думю у тебя должно было хватить фантазии, что бы:
1. Указать свой путь к файлу
2. Понять, что под "искомое значение" надо понимать:
знаю только текст2
3. А вместо "трататата" подставить что-то типа Текст1.текст = S(0): Текст3.текст = S(2)
я так и сделал, юзаю кнопну ничего не показывает.. (
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Private Sub Command3_Click()
 Dim File As String, CF As String
   File = "\baseban.txt"
   Open File For Binary As #1
      CF = Input(FileLen(File), 1)   'загpyзить в пеpеменyю CF вcе cодеpжимое файла
   Close #1
   Dim ArrayLines() As String
ArrayLines = Split(CF, vbNewLine)
 
Dim J
Dim S()  As String
 
For J = 0 To UBound(ArrayLines) - 1
S = Split(ArrayLines(J), ",")
If S(1) = Text5.Text Then
Text1.Text = S(0): Text2.Text = S(1): Text3.Text = S(3) ' трататата
Exit For
End If
Next J
End Sub
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
15.02.2011, 15:06
File = "\baseban.txt"
так путь указывать некорректно
Поставь на эту строчку брейк
CF = Input(FileLen(File), 1) 'загpyзить в пеpеменyю CF вcе cодеpжимое файла
и посмотри что в переменной CF.
Или напечатай в дебаггер
Или добавь строку:
If Len(CF) = 0 Then MsgBox " Файл пуст", vbCritical, "Проверь путь!"
Если CF не пустая:
Второй брейк поставь на строке:
If S(1) = Text5.Text Then
И сравни (подводя курсор).
Возможно не совпадает формат. Обычно лишние кавычки
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.02.2011, 15:06
Помогаю со студенческими работами здесь

VB база данных ACCESS добавление запроса
Не могу нормально создать запрос, постоянно добавляется пустой столбец, что делать ? SELECT ., .Уровень, .Поколение, . FROM ( INNER...

Организовать добавление данных в файл, просмотр, поиск и очистку данных
НАписать программу. Компонентами типизированного файла являются записи, состоящие из следующих полей: - фамилия; - имя; - отчество; - город...

База Данных поиск по Edit
Здравствуйте, подскажите как сделать такое: Есть 2 Edit, 1 Dbgrid, 1 Dbnavigator, 1 AdoConnection, 1 AdoTable, и база данных с 3...

База данных и поиск (фильтр)
Хочу организовать поиск по БД Подскажите, что я не так делаю? procedure TForm1.SEditClick(Sender: TObject); var s: string; ...

База данных access поиск и фильтрация
Здраствуйте , есть исходник помогите с кодом поиска и фильтрации , перепробовал все поиски и фильтрации ничего не помогает !


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru