Страница: 1 |
Страница: 1 |
Вопрос: Открытие случайного файла
Добавлено: 02.08.07 10:40
Автор вопроса: NNK | Web-сайт:
Люди, помогите, пожалуйста! Я тут не разобрался. У меня имеется куча текстовых файлов. Как сделать так, чтобы из них выбирался случайный и открывался. Есть сто файлов, нужно открыть один из них. Как быть. Я пробовал с переменными, не получается. Сейчас снова буду пытаться. Напишу, если получится. Жду помощи :)
Ответы
Всего ответов: 7
Номер ответа: 1
Автор ответа:
NNK
ICQ: 311381806
Вопросов: 1
Ответов: 2
Web-сайт:
Профиль | | #1
Добавлено: 02.08.07 11:44
Напишу поподробнее. У меня в папке с проектом сто текстовых файлов, которые называются так - 1.txt; 2.txt; 3.txt...100.txt . Не хочется для их открытия строчить мегабайты кода, вроде:
Randomize
s=Int(1+101*Rnd)
Select Case s
Case 1 ' выбор первого файла
Open App,Path & "\1.txt" For Input As #1
...
Close #1
Case 2 ' выбор второго файла
Open App.Path & "\2.txt" For Input As #1
...
Close #1
......
Более разумным было бы что-то вроде:
randomize
Файл = Str(Int(1+101*Rnd)) + ".txt" ' "Имя файла" + "расширение"
Open App.Path & Файл...
Как бы такое замутить. Наверняка, задача проста
Номер ответа: 2
Автор ответа:
Pashenko
ICQ: 176176951
Вопросов: 14
Ответов: 655
Профиль | | #2
Добавлено: 02.08.07 11:52
Сам всё и написал.
Номер ответа: 3
Автор ответа:
Softer
ICQ: 203660381
Вопросов: 29
Ответов: 205
Web-сайт:
Профиль | | #3
Добавлено: 02.08.07 11:52
s=Int(Rnd(1)*100+1)
open app.path & "\" & cstr(s) & ".txt" for input as #1
...
close
Так не подойдет?
Номер ответа: 4
Автор ответа:
Алексей
black admin
ICQ: 261779681
Вопросов: 87
Ответов: 633
Web-сайт:
Профиль | | #4
Добавлено: 02.08.07 11:55
Randomize: Dim i As Integer: i = Int(100 * Rnd): Open (App.Path & "\" & IIf(i <= 0, "1", CStr(i)) & ".txt" For Input As #1
Номер ответа: 5
Автор ответа:
NNK
ICQ: 311381806
Вопросов: 1
Ответов: 2
Web-сайт:
Профиль | | #5
Добавлено: 02.08.07 12:24
Надо было использовать CStr. Спасибо!
Номер ответа: 6
Автор ответа:
astoro
ICQ: 649109
Вопросов: 31
Ответов: 391
Профиль | | #6
Добавлено: 03.08.07 07:45
при использовании оператора & не Cstr не обязательно, и даже наоборот, не желательно, ибо дополнительное преобразование, то есть тормоза.
Номер ответа: 7
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #7
Добавлено: 03.08.07 12:53
Дополнительног опреобразования, думаю, не будет. Ибо после CStr итак
уже получается String, во что его еще преобразовывать?
А вот для чёткости кода лучше CStr оставить. Привыкайте к явному
приведению типов. Это позволит избежать разных неявных ошибок, которые
потом трудно вылавливать.