Файл или папка?

Форум для изучающих FPC и их учителей.

Модератор: Модераторы

Файл или папка?

Сообщение Stargazer44 » 19.03.2019 16:10:53

ОС: Windows.
Есть строка (string), значение которой представляет собой путь к объекту на диске.
Как определить что представляет собой объект: папка или файл или объект вообще не существует?
Stargazer44
новенький
 
Сообщения: 10
Зарегистрирован: 24.12.2013 23:49:31

Re: Файл или папка?

Сообщение Лекс Айрин » 19.03.2019 16:29:05

Существование файла fileexist и его аналог в utf8. Примерно там же должна быть функция проверки папка это или файл. Ну или есть функция отрезающая имя файла от папки. Если имя отсутствует,то это папка.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Файл или папка?

Сообщение Cheb » 19.03.2019 22:17:13

ExtractFilePath
ExtractFileName
и прочая
-см. http://www.delphibasics.co.uk/RTL.asp?N ... ctFileName

тж.
DirectoryExists
FileExists
IncludeTrailingPathDelimiter
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 994
Зарегистрирован: 06.06.2005 15:54:34

Re: Файл или папка?

Сообщение sign » 20.03.2019 07:44:16

Stargazer44 писал(а):ОС: Windows.
Есть строка (string), значение которой представляет собой путь к объекту на диске.
Как определить что представляет собой объект: папка или файл или объект вообще не существует?


Код: Выделить всё
procedure TForm1.Button1Click(Sender: TObject);
var R: TRawByteSearchRec;
begin
  FindFirst(Edit1.Text, faAnyFile, R);
end; 


R.Attr покажет, на какой объект указывает путь и его наличие.

Если объекта нет, то R.Attr = faAnyFile = $000001FF;
Если объект есть, то, папка это faDirectory = $00000010;
Ну и т.д. смотрим { File attributes }
sign
энтузиаст
 
Сообщения: 1131
Зарегистрирован: 30.08.2009 09:20:53


Re: Файл или папка?

Сообщение Root51 » 10.09.2020 09:41:06

Основное различие между ними заключается в том, что файлы хранят данные, а папки хранят файлы и другие папки. ... Папки, часто называемые каталогами, используются для организации файлов на вашем компьютере. Сами папки практически не занимают места на жестком диске.
Root51
незнакомец
 
Сообщения: 1
Зарегистрирован: 10.09.2020 09:37:12

Re: Файл или папка?

Сообщение 0beron » 01.11.2021 23:06:05

Stargazer44 писал(а):Есть строка (string), значение которой представляет собой путь к объекту на диске.
Как определить что представляет собой объект: папка или файл?

uses
SysUtils
................
var
s:string;
........................
if SetCurrentDir('/твой/полный/путь') = true then
s := 'это папка'
else s := ''это файл';
........................
0beron
новенький
 
Сообщения: 23
Зарегистрирован: 18.08.2012 19:32:10

Re: Файл или папка?

Сообщение alexs » 09.11.2021 16:15:29

На выбор:
DirectoryExists(FFileName)
FileGetAttr(FFileName) and faDirectory>0;
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4053
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь


Вернуться в Обучение Free Pascal

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

Рейтинг@Mail.ru