FileSystemInfo Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
- 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 |
| 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 |
| 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 |
| 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 |
| 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) |