Что нового

Открытие случайного файла из множества (с одинаковыми названиями) - программой по-умолчанию.

Grell

Новичок
Сообщения
127
Репутация
0
Добрый вечер, уважаемые специалисты по autoit.

У меня проблема такая:
В папке C:\файлы и документы\ есть множество подпапок, в которых много-много файлов.
И среди них часто кое-где встречаются файлы с одинаковым названием и расширением "1.rtf"

Подскажите - как реализовать открытие случайного файла "1.rtf" из этого множества файлов с одинаковым названием и расширением ?
 

ZaRaki

Знающий
Сообщения
48
Репутация
19
Добрый вечер, уважаемые специалисты по autoit.

У меня проблема такая:
В папке C:\файлы и документы\ есть множество подпапок, в которых много-много файлов.
И среди них часто кое-где встречаются файлы с одинаковым названием и расширением "1.rtf"

Подскажите - как реализовать открытие случайного файла "1.rtf" из этого множества файлов с одинаковым названием и расширением ?
А пример можешь привести?
От сборки и настройки винды может зависеть различные условия.
Например то, что одинаковые файлы по дэфолту оборачиваются в скобки последующим счётчиком начиная с (1).
Типо 1.rtf, 1 (1).rtf, 1 (2).rtf
Так вот это дэфолтно, но ведь может быть и по другому. Как у тебя ведут файлы с одинаковым названием, в какой формат переименовывается по дэфолту?
Так же не совсем понятно, а что открыть? Ну вот будет там допустим в одной из подпапок находиться 1.rtf, 1 (1).rtf, 1 (2).rtf, 1 (3).rtf, 1 (4).rtf, 1 (5).rtf прям просто рандомный открыть пофиг какой?
 
Автор
G

Grell

Новичок
Сообщения
127
Репутация
0
А пример можешь привести?
В смысле , какой пример ?
Открыть файл - наверное командой Run( 'C:\....EXE')
Только нужно случайный файл как-то сперва выбрать.

У меня Windows7
Файлы rtf - по-умолчанию открываются программой MS Word.

одинаковые файлы по дэфолту оборачиваются в скобки последующим счётчиком начиная с (1).
Все файлы имеют абсолютно одинаковое название и одинаковое расширение - "1.rtf"
Только лежат они в разных подпапках одной папки.
Вот из них нужно случайным образом выбрать один и открыть его.
Сообщение автоматически объединено:

Ну вот будет там допустим в одной из подпапок находиться 1.rtf, 1 (1).rtf, 1 (2).rtf, 1 (3).rtf, 1 (4).rtf, 1 (5).rtf прям просто рандомный открыть пофиг какой?
Из этой подпапки - нужно будет открыть файл "1.rtf" , поскольку именно он имеет название и расширение "1.rtf" (то есть подходит под описание).
 
Последнее редактирование:

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
Код:
;~ AutoIt Version: 3.3.14.5
#include <MsgBoxConstants.au3>
#include <File.au3>

Local $sPath = "C:\файлы и документы"
Local $aFiles = _FileListToArrayRec($sPath, "1.rtf", $FLTAR_FILES, $FLTAR_RECUR, $FLTAR_NOSORT, $FLTAR_FULLPATH)
If @error Then Exit MsgBox($MB_TOPMOST + $MB_ICONERROR, Default, StringFormat('Файлы не найдены -> "%s"', $sPath))

ShellExecute($aFiles[Random(1, $aFiles[0], 1)])
 
Верх