Letter Опубликовано 30 октября, 2020 Поделиться Опубликовано 30 октября, 2020 Подскажите как сократить путь? Например при System.IOUtils.TPath.GetDownloadsPath выдаст такой путь " /storage/emulated/0/Download " и нужно его сократить до "/storage/emulated/0 " Maximus 1 Цитата Ссылка на комментарий
0 slav_z Опубликовано 31 октября, 2020 Поделиться Опубликовано 31 октября, 2020 В вашем случае, если в конце нет разделителя директорий, Download - это имя файла, поэтому используйте System.IOUtils.TPath.GetDirectoryName Попробуйте так же System.IOUtils.TDirectory.GetParent() но оно может модифицировать путь. Цитата Ссылка на комментарий
0 OnePeople Опубликовано 1 ноября, 2020 Поделиться Опубликовано 1 ноября, 2020 Copy(path,0,lastDelimiter('/',path)-1); Цитата Ссылка на комментарий
0 Олег Киреев Опубликовано 2 ноября, 2020 Поделиться Опубликовано 2 ноября, 2020 В 01.11.2020 в 08:57, OnePeople сказал: Copy(path,0,lastDelimiter('/',path)-1); Здравствуйте дайте пожалуйста ссылку на расшифровку "Copy(path,0,lastDelimiter('/',path)-1);" С Уважением. Олег. Цитата Ссылка на комментарий
0 GASCHE Опубликовано 2 ноября, 2020 Поделиться Опубликовано 2 ноября, 2020 4 часа назад, Олег Киреев сказал: дайте пожалуйста ссылку Ищите в интернете Copy и LastDelimiter. Олег Киреев 1 Цитата Ссылка на комментарий
0 Tumaso Опубликовано 2 ноября, 2020 Поделиться Опубликовано 2 ноября, 2020 5 часов назад, Олег Киреев сказал: Здравствуйте дайте пожалуйста ссылку на расшифровку "Copy(path,0,lastDelimiter('/',path)-1);" С Уважением. Олег. Ссылка . Цитата Ссылка на комментарий
0 OnePeople Опубликовано 2 ноября, 2020 Поделиться Опубликовано 2 ноября, 2020 (изменено) Не знаю как правильно ни когда не задумывался, всегда делал по старинке, тут надо ещё проверить чтобы последний символ не был равен "/". If path[length(path)]='/' then // или if pos('/',path)=length(path) then Copy(path,0, lastDelimiter ('/',copy(path,0,length(path)-1)-1) else Copy(path,0,lastDelimiter('/',path)-1); Или допустим copy(path, 0, lastDelimiter ( tpath.getfilename, path)-1; Или Изменено 2 ноября, 2020 пользователем OnePeople Цитата Ссылка на комментарий
0 Tumaso Опубликовано 3 ноября, 2020 Поделиться Опубликовано 3 ноября, 2020 Без проверки на последний / можно обрезать так: LPath := '/storage/emulated/0/Download'; ShowMessage(LPath.SubString(0, LPath.LastIndexOf('/'))); Цитата Ссылка на комментарий
Вопрос
Letter
Подскажите как сократить путь?
Например при System.IOUtils.TPath.GetDownloadsPath выдаст такой путь " /storage/emulated/0/Download " и нужно его сократить
до "/storage/emulated/0 "
Ссылка на комментарий
7 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.