Partager via


CFile::GetStatus

Cette méthode extrait le mode relatifs à l'information à une instance de l'objet donnée d' CFile ou un chemin d'accès donné.

BOOL GetStatus(
   CFileStatus& rStatus 
) const;
static BOOL PASCAL GetStatus(
   LPCTSTR lpszFileName,
   CFileStatus& rStatus,
   CAtlTransactionManager* pTM = NULL
);

Paramètres

  • rStatus
    Une référence à une structure fournie par l'utilisateur de CFileStatus qui recevra les informations d'état.La structure de CFileStatus présente des champs suivants :

    • CTime m_ctime la date et l'heure le fichier a été créé.

    • CTime m_mtime la date et l'heure le fichier a été dernière modification.

    • CTime m_atime la date et l'heure le fichier a été demandé pour la dernière fois pour la lecture.

    • ULONGLONG m_size la taille logique du fichier en octets, telles qu'enregistrées par la commande de DIR.

    • BYTE m_attribute l'octet d'attribut du fichier.

    • char m_szFullName[_MAX_PATH] le nom du fichier absolu dans le jeu de caractères windows.

  • lpszFileName
    Une chaîne dans le jeu de caractères windows qui est le chemin d'accès au fichier souhaité.Le chemin d'accès peut être relatif ou absolu, ou il peut contenir un nom de chemin d'accès réseau.

  • pTM
    Pointeur vers l'objet de CAtlTransactionManager

Valeur de retour

TRUE si les informations d'état pour le fichier spécifié sont correctement obtenues ; sinon, FALSE.

Notes

La version non statique de GetStatus extrait les informations d'état du fichier ouvert associé à l'objet donné d' CFile .La version statique de GetStatus obtient l'état d'un chemin d'accès de fichier spécifié sans ouvrir en fait le fichier.Ceci est utile pour tester l'existence et les droits d'accès d'un fichier.

Le membre de m_attribute de la structure de CFileStatus fait référence au jeu d'attributs de fichier.La classe d' CFile fournit le type énumération de Attribut donc les attributs de fichier peuvent être spécifiés : symboliquement

enum Attribute {

normal = 0x00,

readOnly = 0x01,

hidden = 0x02,

system = 0x04,

volume = 0x08,

directory = 0x10,

archive = 0x20

};

Exemple

CFile cfile;
cfile.Open(_T("SetLength_File.dat"), CFile::modeCreate |
   CFile::modeReadWrite);
ULONGLONG dwNewLength = 10000;
cfile.SetLength(dwNewLength);
CFileStatus status;
if(cfile.GetStatus(status))    // virtual member function
{
   TRACE(_T("File size = %u\n"), status.m_size);
}
TCHAR* pszFileName = _T("SetLength_File.dat");
if(CFile::GetStatus(pszFileName, status))   // static function
{
   TRACE(_T("Full file name = %s\n"), status.m_szFullName);
}

Configuration requise

Header: afx.h

Voir aussi

Référence

Classe de fichier C

Graphique de la hiérarchie

CFile::SetStatus

Classe de CTime