Este tema aún no ha recibido ninguna valoración - Valorar este tema

FileSystemInfo (Clase)

Proporciona la clase base para los objetos FileInfo y DirectoryInfo.

Espacio de nombres: System.IO
Ensamblado: mscorlib (en mscorlib.dll)

[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public abstract class FileSystemInfo : MarshalByRefObject, ISerializable
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public abstract class FileSystemInfo extends MarshalByRefObject implements ISerializable
SerializableAttribute 
ComVisibleAttribute(true) 
public abstract class FileSystemInfo extends MarshalByRefObject implements ISerializable

La clase FileSystemInfo contiene métodos que son comunes para la manipulación de archivos y directorios. Un objeto FileSystemInfo puede representar un archivo o un directorio y, por tanto, servir como base para los objetos FileInfo o DirectoryInfo. Utilice esta clase base cuando analice un gran número de archivos y directorios.

Cuando se realiza la primera llamada, FileSystemInfo llama a Refresh y devuelve la información almacenada en caché de las API para obtener atributos y demás operaciones. En las llamadas siguientes, se debe llamar a Refresh para obtener la última copia de la información.

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

En los miembros que aceptan una ruta de acceso, esta ruta puede hacer referencia a un archivo o sólo a un directorio. La ruta especificada puede hacer referencia también a una ruta relativa o a una ruta de convención de nomenclatura universal (Universal Naming Convention, UNC) de un servidor y un nombre de recurso compartido. Por ejemplo, las siguientes rutas de acceso son todas válidas:

  • "c:\\MiDir\\MiArchivo.txt" en C# o "c:\MiDir\MiArchivo.txt" en Visual Basic.

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

  • "MiDir\\MiSubdir" en C# o "MiDir\MiSubDir" en Visual Basic.

  • "\\\\MiServidor\\MiRecursoComp" en C# o "\\MiServidor\MiRecursoComp" en Visual Basic.

En la siguiente tabla se muestran ejemplos de otras tareas de E/S típicas o relacionadas.

Para realizar esta operación...

Vea el ejemplo de este tema...

Crear un archivo de texto

Cómo: Escribir texto en un archivo

Escribir en un archivo de texto.

Cómo: Escribir texto en un archivo

Leer de un archivo de texto.

Cómo: Leer texto de un archivo

Anexar texto a un archivo.

Cómo: Abrir y anexar a un archivo de registro

File.AppendText

FileInfo.AppendText

Eliminar un archivo.

File.Delete

FileInfo.Delete

Cambiar de nombre o mover un archivo.

File.Move

FileInfo.MoveTo

Copiar un archivo.

File.Copy

FileInfo.CopyTo

Crear un directorio.

Directory.CreateDirectory

System.IO.DirectoryInfo

Crear un subdirectorio.

CreateSubdirectory

Cambiar de nombre o mover un directorio.

Directory.Move

DirectoryInfo.MoveTo

Eliminar un directorio.

Directory.Delete

DirectoryInfo.Delete

Copiar un directorio.

Directory

Ordenar por tamaño los archivos de un directorio.

GetFileSystemInfos

Ver los archivos de un directorio.

Name

Ver los subdirectorios de un directorio.

GetDirectories

GetDirectories

Ver todos los archivos de todos los subdirectorios de un directorio.

GetFileSystemInfos

Obtener el tamaño de un directorio.

Directory

Obtener el tamaño de un archivo.

FileInfo.Length

Obtener los atributos de un archivo.

File.GetAttributes

Establecer los atributos de un archivo.

File.SetAttributes

Determinar si existe un archivo.

File.Exists

Leer de un archivo binario.

Cómo: Leer y escribir en un archivo de datos recién creado

Escribir en un archivo binario.

Cómo: Leer y escribir en un archivo de datos recién creado

Recuperar una extensión de archivo

Path.GetExtension

Recuperar la ruta de acceso completa de un archivo

Path.GetFullPath

Recuperar el nombre de archivo y la extensión de una ruta de acceso

Path.GetFileName

Cambiar la extensión de un archivo

Path.ChangeExtension

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

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) <> 0 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

  • FileIOPermission  Enumeración asociada: Unrestricted Acción de seguridad: petición de herencia Para obtener permiso para heredar de esta clase.
System.Object
   System.MarshalByRefObject
    System.IO.FileSystemInfo
       System.IO.DirectoryInfo
       System.IO.FileInfo
Los miembros estáticos públicos (Shared en Visual Basic) de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

.NET Framework

Compatible con: 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 2.0, 1.0
¿Le ha resultado útil?
(Caracteres restantes: 1500)
Contenido de la comunidad Agregar