下面是一段delphi代码(来自http://www.delphiarea.com/articles/how-to-find-if-a-directory-is-writable/),
function IsDirectoryWritable(const Dir: String): Boolean; var TempFile: array[0..MAX_PATH] of Char; begin if GetTempFileName(PChar(Dir), 'DA', 0, TempFile) <> 0 then Result := Windows.DeleteFile(TempFile) else Result := False; end;
用于判断目录是否可写,主要是用了GetTempFileName和DeleteFile这两个windows api。
GetFileAttributes这个函数对目录是否可写没什么用。
qt里面有一个QDir::isWritable函数,用来判断目录是否可写,不知道具体如何实现的,有时间的话看看。