String.AbbreviateFilePath
Описание
Возвращает сокращенный путь к файлу учитывая заданное максимальное количество символов.
Если путь к файлу превышает максимальное число символов, названия папок будут удалены из пути с правой стороны, пока его длина не станет меньше указанного количества символов.
Это удаление будет заменено на "...".
Примечание: Имя файла не может быть сокращено, поэтому если путь, включая и имя файла, превышает максимальное число символов, сокращение будет как можно более близким к этому числу.
Например: String.AbbreviateFilePath("C:\\Program Files\\AutoPlay Media Studio X\\Readme.htm",37); Возврат: C:\Program Files\...\Readme.htm Поскольку этот путь наименьший путь, который не превышает в длину заданные 37 символов. ПараметрыFilePath
(строка) Путь файла что нужно сократить.
Characters
(число) Максимальное количество символов, используемых в сокращенном пути.
ВозвратResultVariable
(строка) Новый путь файла с учетом указанного числа символов. Можно использовать действие Application.GetLastError для определения случился ли отказ в работе этого действия и почему.
При добавлении действия из редактора скрипта, можно использовать это поле для определения переменной, которая возвращает значение, сохраняющееся в ней.
Смотрите также: Связанные действия
ПримерыПример 1internal_path = "c:\\windows\\system32\\drivers\\ta_da\\foldername\\driver.vxd"; display_path = String.AbbreviateFilePath(internal_path, 30);Конвертируем длинный внутренне используемый путь в более приемлемый формат для показа пользователю (c:\windows\...\driver.vxd) Пример 2-- callback function for File.Delete action -- возвращающаяся функция для действия File.Delete function DeleteCallBack(source, deleted, total) -- set the message and status text -- задаем сообщение и текст состояния StatusDlg.SetMessage("Delete: " .. String.AbbreviateFilePath(source, 10)); StatusDlg.SetStatusText("File " .. deleted .. " of " .. total .. "."); -- show the cancel button -- показываем кнопку Отмена StatusDlg.ShowCancelButton(true, "Cancel"); -- check if the cancel button was pressed bCancel = StatusDlg.IsCancelled(); -- if the cancel button was pressed, return false, else return true. -- если кнопка Отмена была нажата, возвращаем значение ложь (false), иначе возвращаем значение истина (true). if bCancel then return false; else return true; end end -- show the status dialog -- показываем диалоговое окно состояния StatusDlg.Show(); -- delete all files in folder c:\temp, using the DeleteCallBack function -- удаляем все файлы в папке c:\temp, используя функцию DeleteCallBack File.Delete("c:\\temp\\*.*", true, true, true, DeleteCallBack); -- Hide the status dialog -- Скрываем диалоговое окно состояния StatusDlg.Hide();Удаляем все файлы и папки из c:\temp, и используем возвращающуюся функцию для показа состояния пользователю.
Смотрите также: Связанные действия
|