Qore Programming Language Reference Manual  1.8.1
QC_Dir.dox.h
1 
3 namespace Qore {
5 
7 struct DirStatInfo {
11  int blksize;
13  int blocks;
17  int dev;
19  int gid;
21  int inode;
23  *string link;
25  int mode;
29  string name;
31  int nlink;
33  string perm;
35  int rdev;
37  int size;
39  string type;
41  int uid;
42 };
43 }
44 
46 namespace Qore {
48 
57 class Dir {
58 
59 public:
61 
78 bool chdir(string path);
79 
80 public:
82 
99 nothing chgrp(int gid);
100 
101 public:
103 
121 nothing chgrp(string groupname);
122 
123 public:
125 
139 nothing chmod(softint mode);
140 
141 public:
143 
160 nothing chown(int uid);
161 
162 public:
164 
182 nothing chown(string username);
183 
184 public:
186 
195  constructor(*string encoding);
196 
197 public:
199 
204  copy();
205 
206 public:
208 
226 int create(softint mode = 0777);
227 
228 public:
230 
238 bool exists();
239 
240 public:
242 
258 hash<StatInfo> hstat();
259 
260 public:
262 
282 list<auto> list(bool full = False);
283 
284 public:
286 
312 list<auto> list(string regex, softint regex_options = 0, softbool full = False);
313 
314 public:
316 
338 list<auto> listDirs(bool full = False);
339 
340 public:
342 
368 list<auto> listDirs(string regex, softint regex_options = 0, softbool full = False);
369 
370 public:
372 
394 list<auto> listFiles(bool full = False);
395 
396 public:
398 
424 list<auto> listFiles(string regex, softint regex_options = 0, softbool full = False);
425 
426 public:
428 
443 nothing mkdir(string subdir, softint mode = 0777);
444 
445 public:
447 
459 Dir openDir(string subdir, *string encoding);
460 
461 public:
463 
480 File openFile(string filename, int flags = O_RDONLY, int mode = 0666, *string encoding);
481 
482 public:
484 
493 *string path();
494 
495 public:
497 
515 bool removeFile(string file);
516 
517 public:
519 
535 nothing rmdir(string subdir);
536 
537 public:
539 
555 list<auto> stat();
556 
557 public:
559 
576 hash<FilesystemInfo> statvfs();
577 };
578 }
This class implements directory handling, file listing, creating/removing subdirectories,...
Definition: QC_Dir.dox.h:57
nothing chown(string username)
Change the ownership of the directory from the username.
File openFile(string filename, int flags=O_RDONLY, int mode=0666, *string encoding)
Create and open a File object in the current directory of the Dir object.
list< auto > listDirs(bool full=False)
Retrieves all subdirectory entries in this directory, except "." and ".." directories; if any errors ...
nothing chgrp(int gid)
Change the group membership of the directory from the group id.
list< auto > stat()
Returns a list of file status information for the current directory.
bool removeFile(string file)
Remove the file with the given name in the Dir object's directory.
nothing rmdir(string subdir)
Removes a direct subdirectory from the Dir object's current path.
Dir openDir(string subdir, *string encoding)
Get a Dir object as an subdir entry of the current directory.
hash< StatInfo > hstat()
Returns a StatInfo hash of file status information for the current directory.
hash< FilesystemInfo > statvfs()
Returns a FilesystemInfo hash for the current directory.
bool chdir(string path)
Changes the current directory of the Dir object to the path given.
bool exists()
Returns True if the path in the Dir object points to a directory that already exists and is openable ...
list< auto > listFiles(string regex, softint regex_options=0, softbool full=False)
Retrieves all files in the directory that match the given regular expression; if any errors occur an ...
list< auto > list(string regex, softint regex_options=0, softbool full=False)
Gets all entries in the directory that match the given regular expression (except "....
constructor(*string encoding)
Creates the Directory object.
list< auto > list(bool full=False)
Get all entries in this directory, except "." and ".." directories; if any errors occur an exception ...
nothing chown(int uid)
Change the ownership of the directory from the userid.
int create(softint mode=0777)
Creates the directory tree the Dir object points to, if it does not exist.
*string path()
Returns the path of the Dir object or NOTHING if no path is set.
nothing chmod(softint mode)
Changes the mode of the directory.
nothing chgrp(string groupname)
Change the group membership of the directory.
list< auto > listFiles(bool full=False)
Retrieves all files in this directory; if any errors occur an exception is thrown.
list< auto > listDirs(string regex, softint regex_options=0, softbool full=False)
Gets all subdirectory entries in the directory that match the given regular expression (except "....
nothing mkdir(string subdir, softint mode=0777)
Creates a direct subdirectory in the Dir object's current path.
copy()
Creates a new directory object with the same character encoding specification and the same path as th...
The File class allows Qore programs to read, write, and create files.
Definition: QC_File.dox.h:51
const False
logical False
Definition: qc_qore.dox.h:96
date date(date dt)
Returns the date passed.
const O_RDONLY
Open the file read-only.
Definition: QC_File.dox.h:781
bool regex(string str, string regex, int options=0)
Returns True if the regular expression matches the string passed, otherwise returns False.
main Qore-language namespace
Definition: Pseudo_QC_All.dox.h:3
file status information hash as returned by Dir::list(), Dir::listFiles(), and Dir::listDirs() if the...
Definition: QC_Dir.dox.h:7
int gid
group ID of the owner
Definition: QC_Dir.dox.h:19
int blocks
blocks allocated for the file; may be zero if the platform's internal stat() (2) function does not pr...
Definition: QC_Dir.dox.h:13
string type
a string giving the file type; one of: - "BLOCK-DEVICE" - "DIRECTORY" - "CHARACTER-DEVICE" - "...
Definition: QC_Dir.dox.h:39
date mtime
last modified time of the file
Definition: QC_Dir.dox.h:27
int rdev
device type number
Definition: QC_Dir.dox.h:35
int size
file size in bytes
Definition: QC_Dir.dox.h:37
string perm
a string giving UNIX-style permissions for the file (ex: "-rwxr-xr-x")
Definition: QC_Dir.dox.h:33
int inode
inode of the file
Definition: QC_Dir.dox.h:21
int blksize
block size; may be zero if the platform's internal stat() (2) function does not provide this info
Definition: QC_Dir.dox.h:11
int nlink
number of hard links to this file
Definition: QC_Dir.dox.h:31
string name
a string giving the file or directory name
Definition: QC_Dir.dox.h:29
int mode
inode protection mode
Definition: QC_Dir.dox.h:25
date ctime
last change time of the file's inode
Definition: QC_Dir.dox.h:15
date atime
last access time of the file
Definition: QC_Dir.dox.h:9
*string link
symbolic link target (if present)
Definition: QC_Dir.dox.h:23
int dev
device inode number the file is on
Definition: QC_Dir.dox.h:17
int uid
user ID of the owner
Definition: QC_Dir.dox.h:41