Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D

Ответ
 
Опции темы
Старый 18.04.2010, 22:58   #1
Ziro(AL)
AnyKey`щик
 
Аватар для Ziro(AL)
 
Регистрация: 06.12.2008
Сообщений: 11
Написано 3 полезных сообщений
(для 5 пользователей)
Поиск по файлу

Я создал текстовой файл с информацией о расположении моделей.
(id : имя модели : X : Y : Z)

Символам «:» сделал разделение. Как организовать поиск по файлу и чтение между разделителями если я заранее не знаю номер строки и общее количество строк.
Тоесть условие X должно быть от -52 до +52

35:house1:-50.2:50.2:50.2
36:house2:51.2:51.2:51.2
37:house3:63.2:52.2:51.2
38:house4:-53.2:53.2:52.2

В данном случае id: 35 и 36
Как можно найти эти строчки и выделить их id для дальнейшего использования?
Спасибо!

PS. В поиске, статьях, хелпе и справке по командам, не нашёл ни примеров ни одной команды относящийся к данному случаю…
(Offline)
 
Ответить с цитированием
Старый 19.04.2010, 00:16   #2
Артем Валерьевич
Бывалый
 
Аватар для Артем Валерьевич
 
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений
(для 1,079 пользователей)
Ответ: Поиск по файлу

filein = ReadFile(LevelName)

While Not Eof(filein)


  Read1$ = ReadLine$( filein )
  If Mid(Read1$,1,1) <> ";" And (Read1$ <> "")
     Var$=GetStrParam$(Read1$,1)

		If Var$="Level"	
			
			
			
ramb% = Int(GetStrParam$(Read1$,3))
         	
gamb% = Int(GetStrParam$(Read1$,4))
         	
bamb% = Int(GetStrParam$(Read1$,5))

			AmbientLight ramb%,gamb%,bamb%
__________________
http://forum.boolean.name/image.php?type=sigpic&userid=2247&dateline=1418298  527
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Ziro(AL) (19.04.2010)
Старый 28.04.2010, 11:39   #3
Ziro(AL)
AnyKey`щик
 
Аватар для Ziro(AL)
 
Регистрация: 06.12.2008
Сообщений: 11
Написано 3 полезных сообщений
(для 5 пользователей)
Ответ: Поиск по файлу

к сожалению не смог до конца разобраться (принцип работы кода понял)

не смог понять как записать нужную часть строки в переменную...
и ... Var$=GetStrParam$(Read1$,1)
это для 1 параметра (для второго додумать просто) а как можно вычислить для 3 и т.д. ?
(Offline)
 
Ответить с цитированием
Старый 29.04.2010, 17:44   #4
Damp
Знающий
 
Регистрация: 12.07.2007
Сообщений: 297
Написано 50 полезных сообщений
(для 133 пользователей)
Ответ: Поиск по файлу

Наверно только читать весь файл ReadLine, разбирать каждую строку на параметры и уже по параметрам отсеивать что нужно.

Par0$=GetPar$(MyString$,0)
Par1$=GetPar$(MyString$,1)
...

Function GetPar$(msg$,par%=0,bChr$=":")
fs$=msg
For p=1 To par
ofs=Instr(fs,bChr)
fs$=Mid(fs,ofs+1)
If ofs=0 Return
Next
ofs=Instr(fs,bChr)
fs$=Mid(fs,1,ofs-1)
Return fs
End Function
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Ziro(AL) (30.04.2010)
Старый 03.06.2010, 21:57   #5
Ziro(AL)
AnyKey`щик
 
Аватар для Ziro(AL)
 
Регистрация: 06.12.2008
Сообщений: 11
Написано 3 полезных сообщений
(для 5 пользователей)
Ответ: Поиск по файлу

а как можно сделать постоянное чтение из файла ?
(в момент когда кончается строчка с информацией "" чтобы файл начинал читаться заного)
(Offline)
 
Ответить с цитированием
Старый 04.06.2010, 07:13   #6
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: Поиск по файлу

Ты хочешь постоянно записывать и считывать инфу из файла? оО Это очень тормозно. Лучше сделай массив и в нем все храни, а когда надо скидывай все это в файл.. Или я тебя не правильно понял?
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 11:31.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com