c# - example - StreamReader vs BinaryReader?
streamreader readline c# (1)
Tanto StreamReader como BinaryReader se pueden usar para obtener datos de un archivo binario
Bueno, StreamReader
puede usarse para obtener datos de texto de una representación binaria de texto.
BinaryReader
se puede utilizar para obtener datos binarios arbitrarios. Si algunos de esos datos binarios son una representación de texto, está bien, pero no tiene por qué serlo.
Línea de fondo:
- Si la totalidad de sus datos es una codificación binaria directa de datos de texto, use
StreamReader
. - Si tienes datos binarios que pueden tener algunas partes en el texto, usa
BinaryReader
Entonces, por ejemplo, no intentarías leer un archivo JPEG con StreamReader
.
Tanto StreamReader
como BinaryReader
se pueden usar para obtener datos de un archivo binario (por ejemplo)
BinaryReader:
using (FileStream fs = File.Open(@"c:/1.bin",FileMode.Open))
{
byte[] data = new BinaryReader(fs).ReadBytes((int)fs.Length);
Encoding.getstring....
}
StreamReader:
using (FileStream fs = File.Open(@"c:/1.bin",FileMode.Open))
{
using (StreamReader sr = new StreamReader(fs,Encoding.UTF8))
{
var myString=sr.ReadToEnd();
}
}
¿Cuál es la diferencia y cuándo debo usar cuál?