read_link


Description:

[ Version ( since = "2.4" ) ]
public string read_link (string filename) throws FileError

Reads the contents of the symbolic link filename like the POSIX `readlink()` function.

The returned string is in the encoding used for filenames. Use to_utf8 to convert it to UTF-8.

The returned string may also be a relative path. Use build_filename to convert it to an absolute path:

g_autoptr(GError) local_error = NULL;
g_autofree gchar *link_target = g_file_read_link ("/etc/localtime", &local_error);

if (local_error != NULL)
g_error ("Error reading link: %s", local_error->message);

if (!g_path_is_absolute (link_target))
{
g_autofree gchar *absolute_link_target = g_build_filename ("/etc", link_target, NULL);
g_free (link_target);
link_target = g_steal_pointer (&absolute_link_target);
}

Parameters:

filename

the symbolic link

Returns:

A newly-allocated string with the contents of the symbolic link, or null if an error occurred.


Namespace: GLib.FileUtils
Package: glib-2.0