### Virtual Method

# Gio File get_basename

#### Declaration [src]

    char*
    get_basename (
      GFile* file
    )

#### Description [src]

Gets the base name (the last component of the path) for a given `GFile`.

If called for the top level of a system (such as the filesystem root or a uri like sftp://host/) it will return a single directory separator (and on Windows, possibly a drive letter).

The base name is a byte string (not UTF-8). It has no defined encoding or rules other than it may not contain zero bytes. If you want to use filenames in a user interface you should use the display name that you can get by requesting the `G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME` attribute with g_file_query_info().

This call does no blocking I/O.

#### Return value

Type: `char*`

String containing the `GFile`‘s base name, or `NULL` if given `GFile` is invalid. The returned string should be freed with `g_free()` when no longer needed.

The caller of the method takes ownership of the returned data, and is responsible for freeing it.
The return value can be `NULL`.
The value is a platform-native string, using the preferred OS encoding on Unix and UTF-8 on Windows.