gstdio.h File Reference

g_access ( const gchar *, int )

G_BEGIN_DECLS IMPORT_C intg_access(const gchar *filename,
intmode
)

g_access: : a pathname in the GLib file name encoding (UTF-8 on Windows) : as in access()

A wrapper for the POSIX access() function. This function is used to test a pathname for one or several of read, write or execute permissions, or just existence.

On Windows, the file protection mechanism is not at all POSIX-like, and the underlying function in the C library only checks the FAT-style READONLY attribute, and does not look at the ACL of a file at all. This function is this in practise almost useless on Windows. Software that needs to handle file permissions on Windows more exactly should use the Win32 API.

See your C library manual for more details about access().

Returns: zero if the pathname refers to an existing file system object that has all the tested permissions, or -1 otherwise or on error.

Since: 2.8

g_chmod ( const gchar *, int )

IMPORT_C intg_chmod(const gchar *filename,
intmode
)

g_chmod: : a pathname in the GLib file name encoding (UTF-8 on Windows) : as in chmod()

A wrapper for the POSIX chmod() function. The chmod() function is used to set the permissions of a file system object.

On Windows the file protection mechanism is not at all POSIX-like, and the underlying chmod() function in the C library just sets or clears the FAT-style READONLY attribute. It does not touch any ACL. Software that needs to manage file permissions on Windows exactly should use the Win32 API.

See your C library manual for more details about chmod().

Returns: zero if the operation succeeded, -1 on error.

Since: 2.8

g_open ( const gchar *, int, int )

IMPORT_C intg_open(const gchar *filename,
intflags,
intmode
)

g_open: : a pathname in the GLib file name encoding (UTF-8 on Windows) : as in open() : as in open()

A wrapper for the POSIX open() function. The open() function is used to convert a pathname into a file descriptor.

On POSIX systems file descriptors are implemented by the operating system. On Windows, it's the C library that implements open() and file descriptors. The actual Win32 API for opening files is quite different, see MSDN documentation for CreateFile(). The Win32 API uses file handles, which are more randomish integers, not small integers like file descriptors.

Because file descriptors are specific to the C library on Windows, the file descriptor returned by this function makes sense only to functions in the same C library. Thus if the GLib-using code uses a different C library than GLib does, the file descriptor returned by this function cannot be passed to C library functions like write() or read().

See your C library manual for more details about open().

Returns: a new file descriptor, or -1 if an error occurred. The return value can be used exactly like the return value from open().

Since: 2.6

g_creat ( const gchar *, int )

IMPORT_C intg_creat(const gchar *filename,
intmode
)

g_creat: : a pathname in the GLib file name encoding (UTF-8 on Windows) : as in creat()

A wrapper for the POSIX creat() function. The creat() function is used to convert a pathname into a file descriptor, creating a file if necessary.

On POSIX systems file descriptors are implemented by the operating system. On Windows, it's the C library that implements creat() and file descriptors. The actual Windows API for opening files is different, see MSDN documentation for CreateFile(). The Win32 API uses file handles, which are more randomish integers, not small integers like file descriptors.

Because file descriptors are specific to the C library on Windows, the file descriptor returned by this function makes sense only to functions in the same C library. Thus if the GLib-using code uses a different C library than GLib does, the file descriptor returned by this function cannot be passed to C library functions like write() or read().

See your C library manual for more details about creat().

Returns: a new file descriptor, or -1 if an error occurred. The return value can be used exactly like the return value from creat().

Since: 2.8

g_rename ( const gchar *, const gchar * )

IMPORT_C intg_rename(const gchar *oldfilename,
const gchar *newfilename
)

g_rename: : a pathname in the GLib file name encoding (UTF-8 on Windows) : a pathname in the GLib file name encoding

A wrapper for the POSIX rename() function. The rename() function renames a file, moving it between directories if required.

See your C library manual for more details about how rename() works on your system. It is not possible in general on Windows to rename a file that is open to some process.

Returns: 0 if the renaming succeeded, -1 if an error occurred

Since: 2.6

g_mkdir ( const gchar *, int )

IMPORT_C intg_mkdir(const gchar *filename,
intmode
)

g_mkdir: : a pathname in the GLib file name encoding (UTF-8 on Windows) : permissions to use for the newly created directory

A wrapper for the POSIX mkdir() function. The mkdir() function attempts to create a directory with the given name and permissions. The mode argument is ignored on Windows.

See your C library manual for more details about mkdir().

Returns: 0 if the directory was successfully created, -1 if an error occurred

Since: 2.6

g_chdir ( const gchar * )

IMPORT_C intg_chdir(const gchar *path)

g_chdir: : a pathname in the GLib file name encoding (UTF-8 on Windows)

A wrapper for the POSIX chdir() function. The function changes the current directory of the process to .

See your C library manual for more details about chdir().

Returns: 0 on success, -1 if an error occurred.

Since: 2.8

g_stat ( const gchar *, struct stat * )

IMPORT_C intg_stat(const gchar *filename,
struct stat *buf
)

g_stat: : a pathname in the GLib file name encoding (UTF-8 on Windows) : a pointer to a <structname>stat</structname> struct, which will be filled with the file information

A wrapper for the POSIX stat() function. The stat() function returns information about a file. On Windows the stat() function in the C library checks only the FAT-style READONLY attribute and does not look at the ACL at all. Thus on Windows the protection bits in the st_mode field are a fabrication of little use.

See your C library manual for more details about stat().

Returns: 0 if the information was successfully retrieved, -1 if an error occurred

Since: 2.6

g_lstat ( const gchar *, struct stat * )

IMPORT_C intg_lstat(const gchar *filename,
struct stat *buf
)

g_lstat: : a pathname in the GLib file name encoding (UTF-8 on Windows) : a pointer to a <structname>stat</structname> struct, which will be filled with the file information

A wrapper for the POSIX lstat() function. The lstat() function is like stat() except that in the case of symbolic links, it returns information about the symbolic link itself and not the file that it refers to. If the system does not support symbolic links g_lstat() is identical to g_stat().

See your C library manual for more details about lstat().

Returns: 0 if the information was successfully retrieved, -1 if an error occurred

Since: 2.6

g_unlink ( const gchar * )

IMPORT_C intg_unlink(const gchar *filename)

g_unlink: : a pathname in the GLib file name encoding (UTF-8 on Windows)

A wrapper for the POSIX unlink() function. The unlink() function deletes a name from the filesystem. If this was the last link to the file and no processes have it opened, the diskspace occupied by the file is freed.

See your C library manual for more details about unlink(). Note that on Windows, it is in general not possible to delete files that are open to some process, or mapped into memory.

Returns: 0 if the name was successfully deleted, -1 if an error occurred

Since: 2.6

g_remove ( const gchar * )

IMPORT_C intg_remove(const gchar *filename)

g_remove: : a pathname in the GLib file name encoding (UTF-8 on Windows)

A wrapper for the POSIX remove() function. The remove() function deletes a name from the filesystem.

See your C library manual for more details about how remove() works on your system. On Unix, remove() removes also directories, as it calls unlink() for files and rmdir() for directories. On Windows, although remove() in the C library only works for files, this function tries first remove() and then if that fails rmdir(), and thus works for both files and directories. Note however, that on Windows, it is in general not possible to remove a file that is open to some process, or mapped into memory.

If this function fails on Windows you can't infer too much from the errno value. rmdir() is tried regardless of what caused remove() to fail. Any errno value set by remove() will be overwritten by that set by rmdir().

Returns: 0 if the file was successfully removed, -1 if an error occurred

Since: 2.6

g_rmdir ( const gchar * )

IMPORT_C intg_rmdir(const gchar *filename)

g_rmdir: : a pathname in the GLib file name encoding (UTF-8 on Windows)

A wrapper for the POSIX rmdir() function. The rmdir() function deletes a directory from the filesystem.

See your C library manual for more details about how rmdir() works on your system.

Returns: 0 if the directory was successfully removed, -1 if an error occurred

Since: 2.6

g_fopen ( const gchar *, const gchar * )

IMPORT_C FILE *g_fopen(const gchar *filename,
const gchar *mode
)

g_fopen: : a pathname in the GLib file name encoding (UTF-8 on Windows) : a string describing the mode in which the file should be opened

A wrapper for the stdio fopen() function. The fopen() function opens a file and associates a new stream with it.

Because file descriptors are specific to the C library on Windows, and a file descriptor is partof the <type>FILE</type> struct, the <type>FILE</type> pointer returned by this function makes sense only to functions in the same C library. Thus if the GLib-using code uses a different C library than GLib does, the <type>FILE</type> pointer returned by this function cannot be passed to C library functions like fprintf() or fread().

See your C library manual for more details about fopen().

Returns: A <type>FILE</type> pointer if the file was successfully opened, or NULL if an error occurred

Since: 2.6

g_freopen ( const gchar *, const gchar *, FILE * )

IMPORT_C FILE *g_freopen(const gchar *filename,
const gchar *mode,
FILE *stream
)

g_freopen: : a pathname in the GLib file name encoding (UTF-8 on Windows) : a string describing the mode in which the file should be opened : an existing stream which will be reused, or NULL

A wrapper for the POSIX freopen() function. The freopen() function opens a file and associates it with an existing stream.

See your C library manual for more details about freopen().

Returns: A <type>FILE</type> pointer if the file was successfully opened, or NULL if an error occurred.

Since: 2.6

g_utime ( const gchar *, struct utimbuf * )

IMPORT_C intg_utime(const gchar *filename,
struct utimbuf *utb
)

g_utime: : a pathname in the GLib file name encoding (UTF-8 on Windows) : a pointer to a struct utimbuf.

A wrapper for the POSIX utime() function. The utime() function sets the access and modification timestamps of a file.

See your C library manual for more details about how utime() works on your system.

Returns: 0 if the operation was successful, -1 if an error occurred

Since: 2.18