Difference between revisions of "File.GetFileAttributes"

From SunFlurry wiki
Jump to: navigation, search
(Created page with "{{infobox function |name=GetFileAttributes |object=Файл |caption=Атрибуты файлов |type=1 |status=2 |db=1 |exception=Невозможно преврати...")
 
m (1 revision imported)
 
(No difference)

Latest revision as of 08:50, 7 February 2021

  GetFileAttributes (Атрибуты файлов)
Объект:Файл
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Сервер
Исключения:Невозможно превратить в строку
Визуальность:Нет

Функция возвращает системные атрибуты файла или папки, путь к которым задается первым аргументом. Если файл или папка не существуют, функция возвращает -1. Для проверки наличия атрибута используйте конструкцию And. Ниже дан список констант, которые можно использовать при проверке наличия отдельных атрибутов:

Имя константы Числовое значение Описание
_FILE_ATTRIBUTE_ARCHIVE 32 Файл имеет пометку "архивирован"
_FILE_ATTRIBUTE_COMPRESSED 2048 Файл имеет пометку "сжат"
_FILE_ATTRIBUTE_DIRECTORY 16 Файл является папкой
_FILE_ATTRIBUTE_HIDDEN 2 Файл скрыт
_FILE_ATTRIBUTE_NORMAL 128 Файл не имеет других пометок, кроме этой
_FILE_ATTRIBUTE_OFFLINE 4096 Файл имеет пометку "недоступен в данный момент"
_FILE_ATTRIBUTE_READONLY 1 Файл имеет пометку "только для чтения"
_FILE_ATTRIBUTE_SYSTEM 4 Файл имеет пометку "системный"
_FILE_ATTRIBUTE_TEMPORARY 256 Файл используется для временного хранения информации
_FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 8192 Файл имеет пометку исключающую его индексирование в базе поиска
_FILE_ATTRIBUTE_ENCRYPTED 16384 Файл зашифрован на уровне системы
_FILE_ATTRIBUTE_INTEGRITY_STREAM 32768 Файл имеет пометку "целостность"
_FILE_ATTRIBUTE_NO_SCRUB_DATA 131072 Файл имеет пометку, связанную с "целостностью"
_FILE_ATTRIBUTE_REPARSE_POINT 1024 Файл является указанием на другой физический файл
_FILE_ATTRIBUTE_SPARSE_FILE 512 Файл хранится на диске, как архив, не включающий массивы нулей

Синтаксис

File.GetFileAttributes(<Путь и имя файла или папки (STRING)>):<Атрибуты файла или папки (INT)>

Аргументы

  • <Путь и имя файла или папки (STRING)> - Путь и имя файла или папки. Путь может быть как серверным и так и локальным (Имена файлов).

Возвращаемое значение

Возвращается целое число, совокупность атрибутов файла или папки.

Примеры

Файл:="";
If OpenFileDialog(Файл,"Выберите файл с образом удостоверения","Файлы в формате JPG|*.jpg",1,"jpg") Then
  If File.GetFileAttributes(Файл) And _FILE_ATTRIBUTE_READONLY<>0 Then
    Box("Файл имеет атрибут только для чтения! Снимите пометку перед использованием!",Q_STOP);
    Exit;
  EndIf;
    
  аРазм:=File.GetFileSize(Файл);
  If аРазм/1024>МаксРазмер Then
    Box("Размер файла удостоверения слишком велик ("+глФРМ(аРазм/1024)+"Кб)! Не разрешается добавлять удостоверения размером более "+
      МаксРазмер+"Кб! Измените разрешение при сканировании, либо отредактируйте картинку в граф. редакторе!",Q_STOP);
    Exit;
  EndIf;
  
  //Проверка на корректный формат
  аБуф:=Buffer.Create();
  аБуф.LoadFromFile(Файл,0,2);
  if аБуф.GetWord(0)<>55551 Then //$d8ff
    Box("Поддерживаются только картинки в формате JPG, даже если выбранный файл имеет расширение JPG, внутренний формат его не соответствует этому расширению!",Q_STOP);
    Exit;
  EndIf;
    
  ...
EndIf;