Tengo este código:
fe.BaseStream.Seek(-128,SeekOrigin.End);
char []tag=fe.ReadChars(3);
Es decir, me coloco 128 bytes antes de un archivo y leo tres caracteres. Sin
embargo me han pasado con algún archivo que la matriz no se llena y queda
con longitud cero. Esto no es debido a que no hayan bytes ya que todos los
archivos son grandes (de 1 mega para arriba) con lo que siempre se tiene que
poder poner 128 bytes antes del final.
Con una matriz de bytes lo soluciono pero quiero saber por que no valen
siemrpe con la matriz de char. El problema supongo es que hay veces que en
esas posiciones hay caracteres (con lo que va bien) y otras veces puede
haber cualquier byte. Si es así ¿en qué se basa c# para no considerarlos
como posibles caracteres o no (algún rango en concreto)?
Leer las respuestas