FileSystemInfo Clase

Definición

Proporciona la clase base para los FileInfo objetos y DirectoryInfo .

public ref class FileSystemInfo abstract
public ref class FileSystemInfo abstract : MarshalByRefObject, System::Runtime::Serialization::ISerializable
public abstract class FileSystemInfo
public abstract class FileSystemInfo : MarshalByRefObject, System.Runtime.Serialization.ISerializable
[System.Serializable]
public abstract class FileSystemInfo : MarshalByRefObject, System.Runtime.Serialization.ISerializable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class FileSystemInfo : MarshalByRefObject, System.Runtime.Serialization.ISerializable
type FileSystemInfo = class
type FileSystemInfo = class
    inherit MarshalByRefObject
    interface ISerializable
[<System.Serializable>]
type FileSystemInfo = class
    inherit MarshalByRefObject
    interface ISerializable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileSystemInfo = class
    inherit MarshalByRefObject
    interface ISerializable
Public MustInherit Class FileSystemInfo
Public MustInherit Class FileSystemInfo
Inherits MarshalByRefObject
Implements ISerializable
Herencia
FileSystemInfo
Herencia
FileSystemInfo
Derivado
Atributos
Implementaciones

Ejemplos

En el ejemplo siguiente se muestra cómo recorrer en bucle todos los archivos y directorios, consultando información sobre cada entrada.

using System;
using System.IO;

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            //  Loop through all the immediate subdirectories of C.
            foreach (string entry in Directory.GetDirectories(@"C:\"))
            {
                DisplayFileSystemInfoAttributes(new DirectoryInfo(entry));
            }
            //  Loop through all the files in C.
            foreach (string entry in Directory.GetFiles(@"C:\"))
            {
                DisplayFileSystemInfoAttributes(new FileInfo(entry));
            }
        }
        static void DisplayFileSystemInfoAttributes(FileSystemInfo fsi)
        {
            //  Assume that this entry is a file.
            string entryType = "File";

            // Determine if entry is really a directory
            if ((fsi.Attributes & FileAttributes.Directory) == FileAttributes.Directory )
            {
                entryType = "Directory";
            }
            //  Show this entry's type, name, and creation date.
            Console.WriteLine("{0} entry {1} was created on {2:D}", entryType, fsi.FullName, fsi.CreationTime);
        }
    }
}

 // Output will vary based on contents of drive C.

 // Directory entry C:\Documents and Settings was created on Tuesday, November 25, 2003
 // Directory entry C:\Inetpub was created on Monday, January 12, 2004
 // Directory entry C:\Program Files was created on Tuesday, November 25, 2003
 // Directory entry C:\RECYCLER was created on Tuesday, November 25, 2003
 // Directory entry C:\System Volume Information was created on Tuesday, November 2, 2003
 // Directory entry C:\WINDOWS was created on Tuesday, November 25, 2003
 // File entry C:\IO.SYS was created on Tuesday, November 25, 2003
 // File entry C:\MSDOS.SYS was created on Tuesday, November 25, 2003
 // File entry C:\pagefile.sys was created on Saturday, December 27, 2003
Imports System.IO
Module Module1

    Sub Main()
        ' Loop through all the immediate subdirectories of C.
        For Each entry As String In Directory.GetDirectories("C:\")
            DisplayFileSystemInfoAttributes(New DirectoryInfo(entry))
        Next

        ' Loop through all the files in C.
        For Each entry As String In Directory.GetFiles("C:\")
            DisplayFileSystemInfoAttributes(New FileInfo(entry))
        Next
    End Sub

    Sub DisplayFileSystemInfoAttributes(ByVal fsi As IO.FileSystemInfo)
        ' Assume that this entry is a file.
        Dim entryType As String = "File"

        ' Determine if this entry is really a directory.
        If (fsi.Attributes And FileAttributes.Directory) = FileAttributes.Directory Then
            entryType = "Directory"
        End If

        ' Show this entry's type, name, and creation date.
        Console.WriteLine("{0} entry {1} was created on {2:D}", _
            entryType, fsi.FullName, fsi.CreationTime)
    End Sub
End Module

' Output will vary based on contents of drive C.
' 
' Directory entry C:\Documents and Settings was created on Tuesday, November 25, 2003
' Directory entry C:\Inetpub was created on Monday, January 12, 2004
' Directory entry C:\Program Files was created on Tuesday, November 25, 2003
' Directory entry C:\RECYCLER was created on Tuesday, November 25, 2003
' Directory entry C:\System Volume Information was created on Tuesday, November 2, 2003
' Directory entry C:\WINDOWS was created on Tuesday, November 25, 2003
' File entry C:\IO.SYS was created on Tuesday, November 25, 2003
' File entry C:\MSDOS.SYS was created on Tuesday, November 25, 2003
' File entry C:\pagefile.sys was created on Saturday, December 27, 2003

Comentarios

La FileSystemInfo clase contiene métodos comunes a la manipulación de archivos y directorios. Un FileSystemInfo objeto puede representar un archivo o un directorio, por lo que actúa como base para FileInfo objetos o DirectoryInfo . Use esta clase base al analizar muchos archivos y directorios.

Una clase derivada solo puede heredar de FileSystemInfo si la clase derivada tiene el permiso AllAccess de la FileIOPermissionAccess enumeración.

En los miembros que aceptan una ruta de acceso, la ruta de acceso puede hacer referencia a un archivo o simplemente a un directorio. La ruta de acceso especificada también puede hacer referencia a una ruta de acceso relativa o a una ruta de acceso de convención de nomenclatura universal (UNC) para un servidor y un nombre de recurso compartido. Por ejemplo, todas las siguientes son rutas de acceso aceptables:

  • "c:\\MyDir\\MyFile.txt" en C#, o "c:\MyDir\MyFile.txt" en Visual Basic.

  • "c:\\MyDir" en C#, o "c:\MyDir" en Visual Basic.

  • "MyDir\\MySubdir" en C#, o "MyDir\MySubDir" en Visual Basic.

  • "\\\\MyServer\\MyShare" en C#, o "\\MyServer\MyShare" en Visual Basic.

Para obtener una lista de tareas comunes de E/S, consulte Tareas comunes de E/S.

Constructores

Nombre Description
FileSystemInfo()

Inicializa una nueva instancia de la clase FileSystemInfo.

FileSystemInfo(SerializationInfo, StreamingContext)
Obsoletos.

Inicializa una nueva instancia de la FileSystemInfo clase con datos serializados.

Campos

Nombre Description
FullPath

Representa la ruta de acceso completa del directorio o archivo.

OriginalPath

Ruta de acceso especificada originalmente por el usuario, ya sea relativa o absoluta.

Propiedades

Nombre Description
Attributes

Obtiene o establece los atributos del archivo o directorio actual.

CreationTime

Obtiene o establece la hora de creación del archivo o directorio actual.

CreationTimeUtc

Obtiene o establece la hora de creación, en hora universal coordinada (UTC), del archivo o directorio actual.

Exists

Obtiene un valor que indica si el archivo o directorio existe.

Extension

Obtiene la parte de extensión del nombre de archivo, incluido el punto . inicial incluso si es el nombre de archivo completo, o una cadena vacía si no hay ninguna extensión presente.

FullName

Obtiene la ruta de acceso completa del directorio o archivo.

LastAccessTime

Obtiene o establece la hora en que se accedió por última vez al archivo o directorio actual.

LastAccessTimeUtc

Obtiene o establece la hora, en hora universal coordinada (UTC), a la que se accedió por última vez al archivo o directorio actual.

LastWriteTime

Obtiene o establece la hora en la que se escribió por última vez el archivo o directorio actual.

LastWriteTimeUtc

Obtiene o establece la hora, en hora universal coordinada (UTC), en la que se escribió por última vez el archivo o directorio actual.

LinkTarget

Obtiene la ruta de acceso de destino del vínculo ubicado en FullNameo null si esta FileSystemInfo instancia no representa un vínculo.

Name

Para los archivos, obtiene el nombre del archivo. En el caso de los directorios, obtiene el nombre del último directorio de la jerarquía si existe una jerarquía. De lo contrario, la Name propiedad obtiene el nombre del directorio.

UnixFileMode

Obtiene o establece el modo de archivo unix para el archivo o directorio actual.

Métodos

Nombre Description
CreateAsSymbolicLink(String)

Crea un vínculo simbólico ubicado en FullName que apunta al especificado pathToTarget.

CreateObjRef(Type)

Crea un objeto que contiene toda la información pertinente necesaria para generar un proxy usado para comunicarse con un objeto remoto.

(Heredado de MarshalByRefObject)
Delete()

Elimina un archivo o directorio.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetLifetimeService()
Obsoletos.

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.

(Heredado de MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)
Obsoletos.

Establece el SerializationInfo objeto con el nombre de archivo y la información de excepción adicional.

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
InitializeLifetimeService()
Obsoletos.

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.

(Heredado de MarshalByRefObject)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
MemberwiseClone(Boolean)

Crea una copia superficial del objeto actual MarshalByRefObject .

(Heredado de MarshalByRefObject)
Refresh()

Actualiza el estado del objeto.

ResolveLinkTarget(Boolean)

Obtiene el destino del vínculo especificado.

ToString()

Devuelve la ruta de acceso original. Use las FullName propiedades o Name para la ruta de acceso completa o el nombre de archivo o directorio.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también