Class: QgsFileUtils

class qgis.core.QgsFileUtils

Bases: sip.wrapper

Class for file utilities.

Methods

addExtensionFromFilter

Ensures that a fileName ends with an extension from the specified filter string.

ensureFileNameHasExtension

Ensures that a fileName ends with an extension from the provided list of extensions.

extensionsFromFilter

Returns a list of the extensions contained within a file filter string. E.g. a filter of “GeoTIFF Files (*.tiff *.tif)” would return a list containing “tiff”, “tif”. The initial ‘.’ is stripped off the extension.

fileMatchesFilter

Returns True if the given fileName matches a file filter string.

findClosestExistingPath

Returns the top-most existing folder from path.

findFile

Will check basepath in an outward spiral up to maxClimbs levels to check if file exists.

representFileSize

Returns the human size from bytes

stringToSafeFilename

Converts a string to a safe filename, replacing characters which are not safe for filenames with an ‘_’ character.

wildcardsFromFilter

Given a filter string like “GeoTIFF Files (.tiff *.tif)”, extracts the wildcard portion of this filter (i.e. “.tiff *.tif”).

addExtensionFromFilter(fileName: str, filter: str)str

Ensures that a fileName ends with an extension from the specified filter string.

E.g. a fileName of “d:/my_file” with a filter of “GeoTIFF Files (*.tiff *.tif)” will return “d:/my_file.tif”, where as fileName of “d:/my_file.TIFF” or “d:/my_file.TIF” will be returned unchanged.

Parameters
  • fileName (str) –

  • filter (str) –

Return type

str

ensureFileNameHasExtension(fileName: str, extensions: Iterable[str])str

Ensures that a fileName ends with an extension from the provided list of extensions.

E.g. if extensions contains “tif” and “tiff”, then a fileName of “d:/my_file” will return “d:/my_file.tif”. A fileName of “d:/my_file.TIFF” or “d:/my_file.TIF” will be returned unchanged.

Parameters
  • fileName (str) –

  • extensions (Iterable[str]) –

Return type

str

extensionsFromFilter(filter: str)List[str]

Returns a list of the extensions contained within a file filter string. E.g. a filter of “GeoTIFF Files (*.tiff *.tif)” would return a list containing “tiff”, “tif”. The initial ‘.’ is stripped off the extension.

Parameters

filter (str) –

Return type

List[str]

fileMatchesFilter(fileName: str, filter: str)bool

Returns True if the given fileName matches a file filter string.

E.g a filter of “GeoTIFF Files (*.tiff *.tif)” would return True for a fileName of “/home/test.tif”, or False for “/home/test.jpg”.

New in version 3.18.

Parameters
  • fileName (str) –

  • filter (str) –

Return type

bool

findClosestExistingPath(path: str)str

Returns the top-most existing folder from path. E.g. if path is “/home/user/projects/2018/P4343” and “/home/user/projects” exists but no “2018” subfolder exists, then the function will return “/home/user/projects”.

New in version 3.2.

Parameters

path (str) –

Return type

str

findFile(file: str, basepath: str = '', maxClimbs: int = 4, searchCeiling: int = 4, currentDir: str = '')List[str]

Will check basepath in an outward spiral up to maxClimbs levels to check if file exists.

Parameters
  • file (str) – Name or full path of the file to find

  • basepath (str = '') – current basepath of the file, needed if only the name is specified in file

  • maxClimbs (int = 4) – limit the number of time the search can move up from the basepath

  • searchCeiling (int = 4) – limits where in the folder hierarchy the search can be performed, 1 = root/drive, 2 = first folder level, 3 = sub folders ( Unix: /usr/bin, Win: C:/Users/Admin ), etc.

  • currentDir (str = '') – alternative default directory to override the actual current directory during the search

Return type

List[str]

Returns

List of strings of the first matching path in unix format.

New in version 3.12.

representFileSize(bytes: int)str

Returns the human size from bytes

Parameters

bytes (int) –

Return type

str

stringToSafeFilename(string: str)str

Converts a string to a safe filename, replacing characters which are not safe for filenames with an ‘_’ character.

Warning

This method strips slashes from the filename, so it is safe to call with file names only, not complete paths.

Parameters

string (str) –

Return type

str

wildcardsFromFilter(filter: str)str

Given a filter string like “GeoTIFF Files (.tiff *.tif)”, extracts the wildcard portion of this filter (i.e. “.tiff *.tif”).

New in version 3.18.

Parameters

filter (str) –

Return type

str