取消文件夾下的子文件夾和文件的只讀屬性


private void UnsetReadOnly(string dirPath)
{//http://bbs.csdn.net/topics/380233913
string[] dirPathes = Directory.GetDirectories(dirPath, "*.*", SearchOption.AllDirectories);
string[] filePathes = Directory.GetFiles(dirPath, "*.*", SearchOption.AllDirectories);
foreach (var dp in dirPathes)
{
DirectoryInfo dir = new DirectoryInfo(dirPath);
dir.Attributes = FileAttributes.Normal & FileAttributes.Directory;
}
foreach (var fp in filePathes)
{
File.SetAttributes(fp, System.IO.FileAttributes.Normal);
}
}

 

用ICSharpZipLib解壓,如果目標文件夾里的文件為只讀屬性會導致解壓失敗:UnauthorizedAccessException: Access to the path is denied.

使用如上代碼取消文件的只讀屬性后解決.(只設置文件夾的Attributes為非只讀沒作用,里面的文件還是只讀)

 

From:http://www.cnblogs.com/xuejianxiyang/p/7514477.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM