mirror of
				https://github.com/qgis/QGIS.git
				synced 2025-10-31 00:06:02 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			244 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			244 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /************************************************************************
 | |
|  * This file has been generated automatically from                      *
 | |
|  *                                                                      *
 | |
|  * src/core/qgsfileutils.h                                              *
 | |
|  *                                                                      *
 | |
|  * Do not edit manually ! Edit header and run scripts/sipify.py again   *
 | |
|  ************************************************************************/
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| class QgsFileUtils
 | |
| {
 | |
| %Docstring(signature="appended")
 | |
| Contains utilities for working with files.
 | |
| %End
 | |
| 
 | |
| %TypeHeaderCode
 | |
| #include "qgsfileutils.h"
 | |
| %End
 | |
|   public:
 | |
| 
 | |
|     static QString representFileSize( qint64 bytes );
 | |
| %Docstring
 | |
| Returns the human size from bytes
 | |
| %End
 | |
| 
 | |
| 
 | |
|     static QStringList extensionsFromFilter( const QString &filter );
 | |
| %Docstring
 | |
| 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.
 | |
| 
 | |
| .. seealso:: :py:func:`ensureFileNameHasExtension`
 | |
| 
 | |
| .. seealso:: :py:func:`addExtensionFromFilter`
 | |
| %End
 | |
| 
 | |
|     static QString wildcardsFromFilter( const QString &filter );
 | |
| %Docstring
 | |
| Given a ``filter`` string like ``GeoTIFF Files (*.tiff *.tif)``,
 | |
| extracts the wildcard portion of this filter (i.e. ``*.tiff *.tif``).
 | |
| 
 | |
| .. versionadded:: 3.18
 | |
| %End
 | |
| 
 | |
|     static bool fileMatchesFilter( const QString &fileName, const QString &filter );
 | |
| %Docstring
 | |
| 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``.
 | |
| 
 | |
| .. versionadded:: 3.18
 | |
| %End
 | |
| 
 | |
|     static QString ensureFileNameHasExtension( const QString &fileName, const QStringList &extensions );
 | |
| %Docstring
 | |
| 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.
 | |
| 
 | |
| .. seealso:: :py:func:`extensionsFromFilter`
 | |
| 
 | |
| .. seealso:: :py:func:`addExtensionFromFilter`
 | |
| %End
 | |
| 
 | |
|     static QString addExtensionFromFilter( const QString &fileName, const QString &filter );
 | |
| %Docstring
 | |
| 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.
 | |
| 
 | |
| .. seealso:: :py:func:`extensionsFromFilter`
 | |
| 
 | |
| .. seealso:: :py:func:`ensureFileNameHasExtension`
 | |
| %End
 | |
| 
 | |
|     static QString stringToSafeFilename( const QString &string );
 | |
| %Docstring
 | |
| 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.
 | |
| %End
 | |
| 
 | |
|     static QString findClosestExistingPath( const QString &path );
 | |
| %Docstring
 | |
| 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``.
 | |
| 
 | |
| .. versionadded:: 3.2
 | |
| %End
 | |
| 
 | |
|     static QStringList findFile( const QString &file, const QString &basepath = QString(), int maxClimbs = 4, int searchCeiling = 4, const QString ¤tDir = QString() );
 | |
| %Docstring
 | |
| Will check ``basepath`` in an outward spiral up to ``maxClimbs`` levels
 | |
| to check if ``file`` exists.
 | |
| 
 | |
| :param file: Name or full path of the file to find
 | |
| :param basepath: current basepath of the file, needed if only the name
 | |
|                  is specified in file
 | |
| :param maxClimbs: limit the number of time the search can move up from
 | |
|                   the basepath
 | |
| :param searchCeiling: 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.
 | |
| :param currentDir: alternative default directory to override the actual
 | |
|                    current directory during the search
 | |
| 
 | |
| :return: List of strings of the first matching path in unix format.
 | |
| 
 | |
| .. versionadded:: 3.12
 | |
| %End
 | |
| 
 | |
|     static Qgis::DriveType driveType( const QString &path );
 | |
| %Docstring
 | |
| Returns the drive type for the given ``path``.
 | |
| 
 | |
| :raises QgsNotSupportedException: if determining the drive type is not
 | |
|                                   supported on the current platform.
 | |
| 
 | |
| .. versionadded:: 3.20
 | |
| %End
 | |
| 
 | |
|     static bool pathIsSlowDevice( const QString &path );
 | |
| %Docstring
 | |
| Returns ``True`` if the specified ``path`` is assumed to reside on a
 | |
| slow device, e.g. a remote network drive or other non-fixed device.
 | |
| 
 | |
| .. versionadded:: 3.20
 | |
| %End
 | |
| 
 | |
|     static QSet< QString > sidecarFilesForPath( const QString &path );
 | |
| %Docstring
 | |
| Returns a list of the sidecar files which exist for the dataset a the
 | |
| specified ``path``.
 | |
| 
 | |
| In this context a sidecar file is defined as a file which shares the
 | |
| same base filename as a dataset, but which differs in file extension. It
 | |
| defines the list of additional files which must be renamed or deleted
 | |
| alongside the main file associated with the dataset in order to
 | |
| completely rename/delete the dataset.
 | |
| 
 | |
| For instance, if ``path`` specified a .shp file then the corresponding
 | |
| .dbf, .idx and .prj files would be returned (amongst others).
 | |
| 
 | |
| .. note::
 | |
| 
 | |
|    QGIS metadata files (.qmd) and map layer styling files (.qml) are NOT included
 | |
|    in the returned list.
 | |
| 
 | |
| .. versionadded:: 3.22
 | |
| %End
 | |
| 
 | |
|     static bool renameDataset( const QString &oldPath, const QString &newPath, QString &error /Out/, Qgis::FileOperationFlags flags = Qgis::FileOperationFlag::IncludeMetadataFile | Qgis::FileOperationFlag::IncludeStyleFile );
 | |
| %Docstring
 | |
| Renames the dataset at ``oldPath`` to ``newPath``, renaming both the
 | |
| file at ``oldPath`` and all associated sidecar files which exist for it.
 | |
| 
 | |
| For instance, if ``oldPath`` specified a .shp file then the
 | |
| corresponding .dbf, .idx and .prj files would be renamed (amongst
 | |
| others).
 | |
| 
 | |
| The destination directory must already exist.
 | |
| 
 | |
| The optional ``flags`` argument can be used to control whether QMD
 | |
| metadata files and QML styling files should also be renamed accordingly.
 | |
| By default these will be renamed, but manually specifying a different
 | |
| set of flags allows callers to avoid this when desired.
 | |
| 
 | |
| :param oldPath: original path to dataset
 | |
| :param newPath: new path for dataset
 | |
| :param flags: optional flags to control file operation behavior
 | |
| 
 | |
| :return: - ``True`` if the dataset was successfully renamed, or
 | |
|            ``False`` if an error occurred
 | |
|          - error: a descriptive error message if the rename operation
 | |
|            fails
 | |
| 
 | |
| .. versionadded:: 3.22
 | |
| %End
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
|     static QStringList splitPathToComponents( const QString &path );
 | |
| %Docstring
 | |
| Given a file ``path``, returns a list of all the components leading to
 | |
| that path.
 | |
| 
 | |
| E.g. if ``path`` is ``/home/user/Pictures/test.png``, the returned list
 | |
| will contain ``/`` , ``home``, ``user``, ``Pictures``, ``test.png``.
 | |
| 
 | |
| .. versionadded:: 3.28
 | |
| %End
 | |
| 
 | |
|     static QString uniquePath( const QString &path );
 | |
| %Docstring
 | |
| Creates a unique file path name from a desired path by appending
 | |
| ``_<n>`` (where ``<n>`` is an integer number) before the file suffix.
 | |
| 
 | |
| E.g. if ``/path/my_image.png`` already exists ``/path/my_image_2.png``
 | |
| (and ``_3`, ``_4`` etc.) will be checked until a file path that does not
 | |
| already exist is found.
 | |
| 
 | |
| :param path: the desired path.
 | |
| 
 | |
| :return: the unmodified path if path is already unique or the new path
 | |
|          with ``_<n>`` (where ``<n>`` is an integer number) appended to
 | |
|          the file name before the suffix.
 | |
| 
 | |
| .. note::
 | |
| 
 | |
|    This function does not make any check on path validity and write permissions.
 | |
| 
 | |
| .. versionadded:: 3.30
 | |
| %End
 | |
| 
 | |
| };
 | |
| 
 | |
| /************************************************************************
 | |
|  * This file has been generated automatically from                      *
 | |
|  *                                                                      *
 | |
|  * src/core/qgsfileutils.h                                              *
 | |
|  *                                                                      *
 | |
|  * Do not edit manually ! Edit header and run scripts/sipify.py again   *
 | |
|  ************************************************************************/
 |