Eliminar archivos temporales a través de C#

Eliminar archivos temporales a través de C#

Estoy intentando eliminar los archivos temporales a través deC#. Pero arroja system.UnauthorizedAccessException.

 File.Delete(Path.GetTempPath());

¿Cómo puedo solucionar ese problema?

Respuesta1

Está utilizando el System.IO.File.Delete(String)método destinado a eliminar archivos, pero está pasando una ruta de directorio como argumento.

Para eliminar un árbol de directorios, debe utilizar System.IO.Directory.Delete(String, Boolean)el método.

http://msdn.microsoft.com/en-us/library/62t64db3%28v=vs.110%29.aspx

Elimina el directorio especificado y, si se indica, cualquier subdirectorio y archivo en el directorio.

De todos modos, tenga en cuenta que algunos archivos temporales específicos aún podrían estar en uso por su aplicación u otras aplicaciones, entonces no tendrá acceso para eliminar archivos en uso, por lo que tal vez prefiera iterar los archivos del directorio y luego llamar al método adecuado para eliminar cada uno. artículo encontrado, con untrata de atraparlobloquear.

información relacionada