### Function

# GLib filename_display_basename

since: 2.6

#### Declaration

    gchar*
    g_filename_display_basename (
      const gchar* filename
    )

#### Description

Returns the display basename for the particular filename, guaranteed to be valid UTF-8. The display name might not be identical to the filename, for instance there might be problems converting it to UTF-8, and some files can be translated in the display.

If GLib cannot make sense of the encoding of `filename`, as a last resort it replaces unknown characters with U+FFFD, the Unicode replacement character. You can search the result for the UTF-8 encoding of this character (which is “\357\277\275” in octal notation) to find out if `filename` was in an invalid encoding.

You must pass the whole absolute pathname to this functions so that translation of well known locations can be done.

This function is preferred over `g_filename_display_name()` if you know the whole path, as it allows translation.

Available since: 2.6

#### Parameters

`filename`

  Type: `const gchar*`

  An absolute pathname in the GLib file name encoding.

  The data is owned by the caller of the function.
  The value is a file system path, using the OS encoding.

#### Return value

Type: `gchar*`

A newly allocated string containing a rendition of the basename of the filename in valid UTF-8

The caller of the function takes ownership of the data, and is responsible for freeing it.
The value is a NUL terminated UTF-8 string.