remarks example cref c# filestream access-denied

example - Acceso al camino denegado error en C#



params comments c# (4)

He leído una publicación similar, pero no puedo entender el problema.

Cambié los permisos de Windows y cambié las rutas.

Cuando intento guardar un archivo, me lanza la excepción:

Acceso a la ruta **** negado.

string route="D://"; FileStream fs = new FileStream(route, FileMode.Create); <--here is the problem StreamWriter write = new StreamWriter(fs); patient person = new patient(); patient.name = textBox1.Text; patient.name2 = textBox2.Text;


¿Intentó especificar algún nombre de archivo?

p.ej:

string route="D://somefilename.txt";


Está intentando crear un objeto FileStream para un directorio (carpeta). Especifique un nombre de archivo (por ejemplo, @ "D: / test.txt") y el error desaparecerá.

Por cierto, le sugiero que use el constructor StreamWriter que toma una Codificación como su segundo parámetro, ya que de lo contrario podría recibir una sorpresa desagradable al intentar leer el archivo guardado más tarde (usando StreamReader).


No tienes permisos para acceder al archivo. Asegúrese de poder acceder al archivo en esa unidad.

string route= @"E:/Sample.text"; FileStream fs = new FileStream(route, FileMode.Create);

Debe proporcionar el nombre del archivo para crear. Por favor, intente esto, ahora puede crear.


tl; versión dr: asegúrese de no intentar abrir un archivo marcado en el sistema de archivos como de solo lectura en modo lectura / escritura.

Me he encontrado con este error en mis viajes tratando de leer en un archivo XML. He encontrado que en algunas circunstancias (detallado a continuación) este error se generaría para un archivo aunque la ruta y el nombre del archivo sean correctos.

Detalles del archivo:

  • La ruta y el nombre de archivo son válidos, el archivo existe
  • Tanto la cuenta de servicio como el usuario conectado tienen permisos de control total para el archivo y la ruta completa
  • El archivo está marcado como de solo lectura
  • Se ejecuta en Windows Server 2008 R2
  • La ruta al archivo utilizaba letras de unidad locales, no una ruta UNC

Al intentar leer el archivo mediante programación, se observó el siguiente comportamiento al ejecutar exactamente el mismo código:

  • Cuando se ejecuta como usuario conectado, el archivo se lee sin errores
  • Cuando se ejecuta como la cuenta de servicio, intentar leer el archivo genera el error Acceso denegado sin detalles

Para solucionar esto, tuve que cambiar la llamada al método desde el valor predeterminado (Apertura como RW) para abrir el archivo como RO. Una vez que hice ese cambio, dejó de arrojar un error.