¿Cómo abrir un StreamReader en modo ShareDenyWrite?

¿Cómo abro unStreamReader conFILE_SHARE_READ, FILE_SHARE_WRITE, FILE_SHARE_DELETE?

La misma pregunta, ligeramente ampliada.

¿Cómo abro unStreamReader ¿Para que pueda leer un archivo de texto codificado, con opciones de uso compartido para que otro proceso pueda leer el archivo?

¿Cómo abro unStreamReader ¿Para que pueda leer un archivo de texto codificado, con opciones de uso compartido para que otro proceso pueda modificar el archivo mientras lo estoy leyendo?

¿Cómo abro unStreamReader ¿Para que pueda leer un archivo de texto codificado, con opciones de uso compartido para que otro proceso pueda eliminar el archivo mientras lo estoy leyendo?

La misma pregunta, un poco más extendida.

En la biblioteca de clases de .NET Framework hay una clase llamadaStreamReader. Es la única clase diseñada para leer."texto", por lo que desciende de la base abstracta.TextReader clase. losTextReader/StreamReader le permite especificar la codificación utilizada por el archivo que está intentando abrir, y puede decodificar el archivo por usted, devolviéndoloStrings de texto

Una vez que he abierto un archivo con elStreamReader:

var sr = new StreamReader(path);

El archivo está bloqueado, con otros procesos que no puedenmodificar oborrar el archivo. Lo que necesito es el equivalente a unFileStream claseFileShare enumeración:

Ninguna: Se niega a compartir el archivo actual. Cualquier solicitud para abrir el archivo (por este proceso u otro proceso) fallará hasta que el archivo se cierre.Leer": Permite la apertura posterior del archivo para lectura. Si no se especifica este indicador, cualquier solicitud para abrir el archivo para lectura (mediante este proceso u otro proceso) fallará hasta que el archivo se cierre. Sin embargo, incluso si se especifica este indicador , es posible que se necesiten permisos adicionales para acceder al archivo.Escribir: Permite la posterior apertura del archivo para escritura. Si no se especifica este indicador, cualquier solicitud para abrir el archivo para escritura (por este proceso u otro proceso) fallará hasta que se cierre el archivo. Sin embargo, incluso si se especifica este indicador, es posible que se necesiten permisos adicionales para acceder al archivo.Leer escribir: Permite la posterior apertura del archivo para su lectura o escritura. Si no se especifica este indicador, cualquier solicitud de abrir el archivo para leer o escribir (mediante este proceso u otro proceso) fallará hasta que el archivo se cierre. Sin embargo, incluso si se especifica este indicador, es posible que se necesiten permisos adicionales para acceder al archivo.Borrar: Permite la eliminación posterior de un archivo.

Excepto que, por razones obvias, no puedo usar unFileStream - tiene que usar unStreamReader.

¿Cómo puedo abrir unStreamReader conFileShare.ReadWrite | FileShare.Delete?

Respuestas a la pregunta(2)

Su respuesta a la pregunta