Что нового

Добавление текста к началу имени файла.

Hulk777

Новичок
Сообщения
72
Репутация
1
Здравствуйте. Помогите, пожалуйста с кодом. Например: выбираю файл через OpenDialog "123.txt". В Inputbox вписываю "Фамилия". И на выходе получаю "Фамилия_123.txt".
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
Вы хоть шаблон скрипта набросайте. Чтобы было и поле ввода и кнопка вызова диалога.
 
Автор
H

Hulk777

Новичок
Сообщения
72
Репутация
1
Код:
#include <GUIConstantsEx.au3>
#include <File.au3>

$Form = GUICreate("Переименование файла", 325, 75, -1, -1)
GUISetBkColor(0x180153)

$Input = GUICtrlCreateInput('', 10, 10, 305, 19)


$btSetEdit = GUICtrlCreateButton("Выбор файла", 10, 35, 100, 30)
$btSetExp = GUICtrlCreateButton("Экспорт", 113, 35, 100, 30)
$btExit = GUICtrlCreateButton("Выход", 216, 35, 100, 30)

GUISetState()

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
         Case $GUI_EVENT_CLOSE,$btExit
            Exit
         Case $btSetEdit
            $file = FileOpenDialog('Выберите файл', @ScriptDir & "\Tools\Backup", 'Все файлы (*.*)', 1)
         Case $btSetExp
           
            Exit
    EndSwitch
WEnd

Exit

Сообщение автоматически объединено:

Как то так. Прошу прощения, если неграмотно.
 
Последнее редактирование:

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
Пробуйте
Код:
#include <GUIConstantsEx.au3>
#include <File.au3>

$Form2 = GUICreate("Переименование файла", 430, 200, -1, -1)
GUISetBkColor(0x180153)

$Edit1 = GUICtrlCreateEdit("", 10, 10, 410, 150)
$folder = (@ScriptDir & "\Tools")

$btSetEdit = GUICtrlCreateButton("Выбор файла", 10, 165, 100, 30)
$btSetExp = GUICtrlCreateButton("Экспорт", 113, 165, 100, 30)
GUICtrlSetState(-1, $GUI_DISABLE)
$btExit = GUICtrlCreateButton("Выход", 320, 165, 100, 30)

GUISetState()

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
         Case $GUI_EVENT_CLOSE,$btExit
            Exit
         Case $btSetEdit
            $file = FileOpenDialog('Выберите файл', @ScriptDir & "\Tools\Backup", 'Все файлы (*.*)', 1)
            $sText=FileRead($file)
            GUICtrlSetData($Edit1, $sText)
            If $file Then GUICtrlSetState($btSetExp, $GUI_ENABLE)
      Case $btSetExp
            $pref = InputBox("Переименование", "Введите префикс имени файла")
            $name = StringRegExp($file, "[^\\]+$", 1)
            If IsArray($name) Then $name = $name[0]
            FileCopy($file, $folder & "\" & $pref & "_" & $name)
            $sTextx=('Файл переименован...')
            GUICtrlSetData($Edit1, $sTextx)
            GUICtrlSetState($btSetExp, $GUI_DISABLE)
    EndSwitch
WEnd
 
Автор
H

Hulk777

Новичок
Сообщения
72
Репутация
1
Работает. Огромная благодарность. Косметику наведу.
 
Верх