FileStream.Read (Método)
Ensamblado: mscorlib (en mscorlib.dll)
public override int Read ( [InAttribute] [OutAttribute] byte[] array, int offset, int count )
public int Read ( /** @attribute InAttribute() */ /** @attribute OutAttribute() */ byte[] array, int offset, int count )
Parámetros
- array
Cuando devuelve el método, contiene la matriz de bytes especificada con valores entre offset y (offset + count - 1)) reemplazada por los bytes leídos desde el origen actual.
- offset
Desplazamiento de bytes en el parámetro array donde debe comenzar la lectura.
- count
Número máximo de bytes que se pueden leer.
Valor devuelto
Número total de bytes leídos en el búfer. Puede ser menor que el número de bytes solicitado si ese número de bytes no está disponible actualmente o cero si se ha alcanzado el final de la secuencia.Este método reemplaza a Read.
El parámetro offset indica la posición de desplazamiento del byte en array (índice de búfer) donde debe iniciarse la lectura, y el parámetro count proporciona el número máximo de bytes que se van a leer de esta secuencia. El valor devuelto es el número real de bytes leídos, o cero si se alcanza el final de la secuencia. Si la operación de lectura se realiza correctamente, la posición actual de la secuencia avanza el número de bytes leídos. Si se produce una excepción, la posición actual de la secuencia no experimentará ningún cambio.
El método Read devuelve cero únicamente después de alcanzar el final de la secuencia. En caso contrario, Read siempre lee al menos un byte de la secuencia antes de finalizar. Si no hay datos disponibles de la secuencia al llamar a Read, el método se bloqueará hasta que pueda devolverse por lo menos un byte de datos. Cualquier implementación tiene la libertad de devolver menos bytes de los solicitados, incluso si no se ha alcanzado el final de la secuencia.
Utilice BinaryReader para leer tipos de datos primitivos.
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 | |
| Escribir en un archivo de texto | |
| Leer de un archivo de texto | |
| Anexar texto a un archivo | |
| Cambiar de nombre o mover un archivo | |
| Copiar un archivo | |
| Obtener el tamaño de un archivo | |
| Obtener los atributos de un archivo | |
| Establecer los atributos de un archivo | |
| Determinar si un archivo existe | |
| Leer de un archivo binario | |
| Escribir en un archivo binario | |
| Crear un directorio | Directory.CreateDirectory |
En el siguiente ejemplo se muestra cómo leer un número especificado de bytes de un archivo existente.
using System; using System.IO; class FSRead { public static void Main() { //Create a file stream from an existing file. FileInfo fi=new FileInfo("c:\\csc.txt"); FileStream fs=fi.OpenRead(); //Read 100 bytes into an array from the specified file. int nBytes=100; byte[] ByteArray=new byte[nBytes]; int nBytesRead=fs.Read(ByteArray, 0, nBytes); Console.WriteLine("{0} bytes have been read from the specified file.", nBytesRead.ToString()); } }
import System.*;
import System.IO.*;
class FSRead
{
public static void main(String[] args)
{
//Create a file stream from an existing file.
FileInfo fi = new FileInfo("c:\\csc.txt");
FileStream fs = fi.OpenRead();
//Read 100 bytes into an array from the specified file.
int nBytes = 100;
ubyte byteArray[] = new ubyte[nBytes];
int nBytesRead = fs.Read(byteArray, 0, nBytes);
Console.WriteLine("{0} bytes have been read from the specified file.",
((Int32)nBytesRead).ToString());
} //main
} //FSRead
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.